【问题标题】:Node.js Error: require is not defined in clientside js fileNode.js 错误:客户端 js 文件中未定义要求
【发布时间】:2016-12-28 09:43:20
【问题描述】:

我有一个 Javascript 文件,其中有需要保存到 Mongoose 模式中并随后插入到 MongoDB 表中的数据。架构是在单独目录中的文件中定义的,因此我尝试通过在文件顶部包含以下行来实质上导入它:

//import schema for sketches
var SketchSchema = require('../schemas/sketch_objs');

然后我收到错误“未捕获的 ReferenceError:未定义要求” 我发现here 是因为require() 在客户端不存在。正如该帖子的答案中所建议的那样,我安装了 Browserify 以便能够需要架构 javascript 文件。

我无法真正确定 Browserify 功能的具体用法来实现这一点,但从 github 自述文件看来,必须执行以下操作:

$ browserify main.js > bundle.js

main.js 中所需的文件将包含在 bundles.js 中。我尝试为需要包含架构并成功生成新文件的文件执行此操作;但是,由于某种原因,当我运行该项目时,我仍然收到有关未定义要求的错误。是不是应该使用Browserify生成的新文件而不是旧文件? 如果不是这种情况,在客户端的文件中要求另一个 js 文件的正确方法是什么?

【问题讨论】:

  • 不能只在浏览器中调用mongodb函数。您必须使用 api(例如休息服务)创建一个分层应用程序来存储和加载您的数据。

标签: javascript node.js npm browserify require


【解决方案1】:

所以

【讨论】:

  • 嗯,我正在使用 Mongoose 作为 ORM,那么还有其他方法可以实现我想要做的事情吗?
猜你喜欢
  • 2013-07-22
  • 1970-01-01
  • 2013-10-04
  • 1970-01-01
相关资源
最近更新 更多