2014-09-24 58 views
3

我使用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。

+0

你的'server.js'文件是由NodeJs運行的,而不是你的瀏覽器,對不對? – meriadec 2014-09-24 08:25:35

+0

@meriadec:我如何確認? – kawade 2014-09-24 08:29:21

+0

如果你在你的終端中輸入'node server.js',你正在使用節點運行它,如果你在瀏覽器中包含'server.js'腳本,你應該刪除它:) – meriadec 2014-09-24 08:31:37

回答

8

require()是一個NodeJS功能,你的角度控制器將在瀏覽器中執行,它沒有內置函數。如果你想複製客戶端的行爲,你應該看看RequireJS