当前位置: 首页 > 面试题库 >

使用MongoClient v3.0时db.collection不是函数

司徒隐水
2023-03-14
问题内容

我一直在尝试使用MongoDB在nodeJS上进行W3schools教程。

当我尝试在nodeJS环境中实现此示例并通过AJAX调用调用该函数时,出现以下错误:

TypeError: db.collection is not a function
    at c:\Users\user\Desktop\Web Project\WebService.JS:79:14
    at args.push (c:\Users\user\node_modules\mongodb\lib\utils.js:431:72)
    at c:\Users\user\node_modules\mongodb\lib\mongo_client.js:254:5
    at connectCallback (c:\Users\user\node_modules\mongodb\lib\mongo_client.js:933:5)
    at c:\Users\user\node_modules\mongodb\lib\mongo_client.js:794:11
    at _combinedTickCallback (internal/process/next_tick.js:73:7)
    at process._tickCallback (internal/process/next_tick.js:104:9)

请在下面找到我的实现代码:

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/mytestingdb";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  db.collection("customers").findOne({}, function(err, result) {
    if (err) throw err;
    console.log(result.name);
    db.close();
  });
});

请注意,只要执行命中,就会发生错误:

db.collection("customers").findOne({}, function(err, result) {}

另外,请注意(如果有关系的话),我已经为节点JS安装了最新的MongoDB软件包( npm install mongodb
),并且MongoDB的版本是MongoDB Enterprise 3.4.4,带有MongoDB Node.js驱动程序v3.0.0-rc0。


问题答案:

我遇到了同样的事情。在package.json中,将mongodb行更改为“ mongodb”:“ ^
2.2.33”。您将需要npm卸载mongodb;然后npm install安装此版本。

这为我解决了这个问题。似乎是错误或文档需要更新。



 类似资料:
  • 问题内容: 我有这个组成部分: 因为我想通过在我的上尝试新的React钩子提案,但出现了一个错误: 我做错什么了? 问题答案: 可能有很多原因,大多数是由于版本不兼容或使用in造成的: 1.确保和的版本相同 确保您还更新了该软件包,并且该软件包 的版本与相同。总的来说,应该与React团队一起更新它们的版本相同。 如果要安装React,请检查您没有使用,因为您将安装16.7,它没有钩子。 范例:

  • 我在WordPress插件中有一个简单的jQuery脚本,它使用了如下jQuery包装器: 我从WordPress仪表板中调用这个脚本,并在jQuery框架加载后加载它。 当我检查Firebug中的页面时,我总是收到错误消息: TypeError:$不是函数 $(document).Ready(function(){ 我是否应该将脚本包装在这个函数中: 这个错误我已经犯了好几次了,不知道该怎么处理

  • 我们如何在setTimeout中使用。我在构造函数中声明了一个属性。我使用了inside它会抛出一个类似于 我试了很多,但不知道如何解决这个问题。为什么错了?请帮我解决这个问题。。

  • 问题内容: 这是node.js index.js文件的标头: 这是用于侦听Firestore更改的node.js函数: 这在package.json文件中: 当我尝试执行“ firebase deploy”命令时,这是我得到的错误: 错误:解析函数触发器时发生错误。 TypeError:admin.firestore不是函数 问题答案: 我能够重现错误并强行解决。我对此并不了解,也无法提供有关此解

  • 这是python游戏的基本战利品表。 常见的,如果滴滚动到任何数字,包括13 不寻常,如果下降滚动14通过,并在18 如果跌落在19或20滚动 即使在满足条件的情况下,该程序也会忽略罕见掉落表,而是从罕见掉落表中取出一个项目,例如掉落=20 1000金币 有人能解释一下这里的问题吗?

  • 问题内容: 当我试图在React版本15.2.0中使用这两个函数时,我在代码中发现了一个问题,尽管如此,我找到了一种解决方法,但是我想知道是否有更好的解决方案。 因此,每当我尝试运行index.html文件时,都不会显示任何内容,但是控制台会出现第一个错误: React.render不是function 。我发现发生这种情况是因为新版本的React需要使用react-dom,即 现在问题已解决,但