ReferenceError:在 MongoDB shell 中未定义要求

Posted

技术标签:

【中文标题】ReferenceError:在 MongoDB shell 中未定义要求【英文标题】:ReferenceError: require is not defined in MongoDB shell 【发布时间】:2015-07-10 14:33:25 【问题描述】:

我尝试通过 Windows 命令(Window 8.1)从 Mongo 客户端连接 MongoDB。当我在 javascript 中使用 require() 时,出现如下错误。有没有人有同样的问题?我错过了任何与require 相关的 npm 安装吗? MongoDB shell怎么找不到require函数?

C:\tutorial\nodeMongoAngular-master\lesson2>mongo

MongoDB shell version: 3.0.1
connecting to: test
var MongoClient = require('mongodb').MongoClient;

2015-04-30T14:33:25.812-0400 E QUERY    ReferenceError: require is not defined
    at (shell):1:19

【问题讨论】:

【参考方案1】:

@Scott Lee:如果您仍在寻找答案,请尝试使用命令“node yourscript.js”运行。确保 mongod 正在运行。 'mongo script.js' 将适用于没有 nodejs 代码的纯 mongo 脚本。

【讨论】:

【参考方案2】:

您将mongo 管理shell 与Node.js driver 混淆了。虽然这两种环境都使用 JavaScript,但 mongo shell 的 I/O 支持更有限,不打算用作应用程序开发的驱动程序。

如果您想使用 MongoDB 驱动程序(根据您的示例代码)编写 Node.js 应用程序,您需要使用 node 解释器。 Node.js 驱动程序文档包含一个 Quickstart tutorial 以及可以帮助您入门的示例。

【讨论】:

以上是关于ReferenceError:在 MongoDB shell 中未定义要求的主要内容,如果未能解决你的问题,请参考以下文章

ReferenceError:TextEncoder 没有用猫鼬定义 Node.js

ReferenceError:产品未定义

NestJS - 如何自我引用 mongoDB 架构 @nestjs/mongoose?

ReferenceError:在初始化之前无法访问词法声明`X'

ReferenceError:找不到变量:堆栈

ReferenceError:未定义解析