要求没有以角度定义

kaw*_*ade 3 node.js angularjs

我正在使用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);
   }

});
Run Code Online (Sandbox Code Playgroud)

和我的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');
Run Code Online (Sandbox Code Playgroud)

当我运行代码时,它会给出如下错误:

ReferenceError: require is not defined
Run Code Online (Sandbox Code Playgroud)

它正在打印上面定义的console.log.

plo*_*tch 7

require()是一个NodeJS函数,您的角度控制器将在浏览器中执行,该浏览器没有该内置函数.如果要复制客户端的行为,则应该查看RequireJS

  • 它实际上是来自commonjs / systemjs的函数 (2认同)