我正在尝试将 yeoman 生成的应用程序连接到 mongodb。
我在 app.js 文件中添加了以下行:
var mongodb = require('mongodb');
使用以下命令运行测试服务器:
grunt server
...我得到了错误require is not defined.
怎么了 ?谢谢,
您将后端与前端代码混淆了。Yeoman 用于搭建前端应用程序。这可能是 Backbone、Ember.js 或 AngularJS。这些存在于用户的浏览器中,因此自然无法直接访问您服务器上的任何资源,包括 MongoDB。
你想要的是一个单独的后端,它公开一个你的前端应用程序可以与之通信的 API,例如通过一个简单的 RESTful API。您应该查看Mean stack 以了解更多关于 Mongo、Express、Angular + Node 的信息。
就像 passy 说的,你需要有一个后端——现在你所拥有的只是前端(角度)。
passy 给出了一个很好的答案,但我只想补充一点,我个人同时使用了 yo 生成器和 express 生成器,进行了一些微调,最终得到了一个完整的 MEAN 堆栈。这可能对你有用。