【发布时间】:2014-11-18 15:48:20
【问题描述】:
我正在使用 angularjs,我在其中创建了一个 js 文件(loginCtrl.js),并且包含了一个控制器。 我已经在另一个文件(server.js)中定义了我的数据库连接和架构,我想将该文件包含在我的 js 中。
我的 loginCtrl.js 看起来像:
test.controller('loginCtrl', function($scope, loginService){
$scope.login = function(user)
{
console.log('inside function 1');
var user = require('./server.js')
console.log('inside function');
loginService.login(user);
}
});
我的 server.js 文件看起来像:
var express = require('express');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/userregistration');
var userSchema = {
username: String,
firstname:String,
lastname: String,
email: String,
password: String
}
var User = mongoose.model('User', userSchema, 'user');
当我运行代码时,它会给出如下错误:
ReferenceError: require is not defined
它正在打印上面定义的console.log。
【问题讨论】:
-
你的
server.js文件是由 NodeJs 运行的,而不是你的浏览器,对吧? -
@meriadec:我如何确认这一点?
-
如果您在终端中输入
node server.js,您正在使用节点运行它,如果您在浏览器中包含server.js脚本,您应该删除它:) -
@meriadec:如何使它工作,以便我可以将其包含在我的 js 文件中...
-
您永远无法在浏览器中连接 mongo。它是服务器端脚本。