AngularJS "ReferenceError: window is not defined" in NodeJS Application
AngularJS "ReferenceError: window is not defined" in NodeJS Application
我正在尝试在 nodeJS 应用程序中使用 Angular 模块与 express 4 和 jade。
因此,为此我在 app.js 中做了 npm install angular --save
和 var angular = require('angular');
。
但是报错
e:\Project\node_modules\angular\angular.js:29016
})(window, document);
^
ReferenceError: window is not defined
at Object.<anonymous> (e:\Project\node_modules\angular\angular.js:29016:4)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (e:\Project\node_modules\angular\index.js:1:63)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (e:\Project\app.js:11:15)
at Module._compile (module.js:456:26)
原因。
我将在 anjularjs 中将我的侧边栏设置为活动状态。
这是我的玉文件
ul.sidebar-nav(ng-controller="HeaderController")
// li.sidebar-brand
li(ng-class="{ active: isActive('/dashboard')}")
a(href='/dashboard') Dashboard
li(ng-class="{ active: isActive('/cases')}")
a(href='/cases') Cases
li(ng-class="{ active: isActive('/contacts')}")
a(href='/contacts') Contacts
li(ng-class="{ active: isActive('/documents')}")
a(href='/documents') Documents
li(ng-class="{ active: isActive('/calendar')}")
a(href='/calendar') Calendar
li(ng-class="{ active: isActive('/timeline')}")
a(href='/timeline') Timeline
这里是模块
function HeaderController($scope, $location)
{
$scope.isActive = function (viewLocation) {
return viewLocation === $location.path();
};
}
在 nodejs 环境中没有 window 对象。 window 有一个 "equivalent"。您可以在这里阅读 DOC for Global。 Angular 用于客户端开发。您无法在服务器端 运行 它。
我正在尝试在 nodeJS 应用程序中使用 Angular 模块与 express 4 和 jade。
因此,为此我在 app.js 中做了 npm install angular --save
和 var angular = require('angular');
。
但是报错
e:\Project\node_modules\angular\angular.js:29016
})(window, document);
^
ReferenceError: window is not defined
at Object.<anonymous> (e:\Project\node_modules\angular\angular.js:29016:4)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (e:\Project\node_modules\angular\index.js:1:63)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (e:\Project\app.js:11:15)
at Module._compile (module.js:456:26)
原因。
我将在 anjularjs 中将我的侧边栏设置为活动状态。 这是我的玉文件
ul.sidebar-nav(ng-controller="HeaderController")
// li.sidebar-brand
li(ng-class="{ active: isActive('/dashboard')}")
a(href='/dashboard') Dashboard
li(ng-class="{ active: isActive('/cases')}")
a(href='/cases') Cases
li(ng-class="{ active: isActive('/contacts')}")
a(href='/contacts') Contacts
li(ng-class="{ active: isActive('/documents')}")
a(href='/documents') Documents
li(ng-class="{ active: isActive('/calendar')}")
a(href='/calendar') Calendar
li(ng-class="{ active: isActive('/timeline')}")
a(href='/timeline') Timeline
这里是模块
function HeaderController($scope, $location)
{
$scope.isActive = function (viewLocation) {
return viewLocation === $location.path();
};
}
在 nodejs 环境中没有 window 对象。 window 有一个 "equivalent"。您可以在这里阅读 DOC for Global。 Angular 用于客户端开发。您无法在服务器端 运行 它。