在我的节点的终端中,我能够调用“IntelliJ mongoDB.js”并检索数据库中的示例数据。然而,当我去启动index.html页面时,我在控制台屏幕上看到一个错误:"Uncaught : require is not defined mongoDB.js:1 at mongoDB.js:1“我试图查看按钮是否不能处理javascript错误,但却能得到一个硬编码的单词出现。任何帮助都将不胜感激。代码如下:
async function main() {
const uri = "mongodb+srv://<usr>:<pass>@cluster0.dfgj3.mongodb.net/myFirstDatabase?retryWrites=true&w=majority";
const client = new MongoClient(uri);
try {
await client.connect();
await listDatabases(client);
} catch (e){
console.error(e);
} finally {
await client.close();
}
}
main().catch(console.error);
async function listDatabases(client) {
const databasesList = await client.db().admin().listDatabases();
console.log("Databases:");
databasesList.databases.forEach(db => console.log(` - ${db.name}`));
};
function displayQuery() {
let text1 = "Hello";
document.getElementById("query").innerHTML = text1;
}
displayQuery();<html>
<head>
<meta charset="UTF-8">
<title>TITLE</title>
<script src="fetchAPI.js" type="text/javascript"></script>
<script src="mongoDB.js" type="text/javascript"></script>
<link href="styles.css" rel="stylesheet">
</head>
<body>
<div class="my-grid">
<p class="span-three">
NOTE: ticker AAPL is just arbitrary
Stock: <input id = "ticker" value = "AAPL"></input>
<br/>
<button onclick="displayQuery()" id= "submit" >Submit</button>
<p id="query"></p>
</p>
</div>
</body>
</html>发布于 2021-09-25 19:37:56
MongoDB仅用于服务器端。您正在尝试在首页调用它。这是两件不同的事情。
为了让你的网页从你的数据库加载数据,你应该创建一个API。api将检索数据并将其发送回您
这是一个来自官方论坛https://www.mongodb.com/community/forums/t/why-doesnt-mongodb-work-with-client-side-js/9062的链接
https://stackoverflow.com/questions/69329411
复制相似问题