我正在研究由节点服务器提供服务的角度应用程序,我正在尝试在core.js文件中包含依赖项。一切都运行良好,直到我向模块添加依赖。一旦我向模块添加依赖项,指令就会因某种原因停止工作。更具体地说,我尝试添加的依赖项是btford.socket-io,并随着凉亭一起安装。
我尝试通过括号添加它,如下所示,app.requires
也可以在评论中看到。控制台中显示的错误是[$injector:modulerr]。
这是我的core.js文件:
var app = angular.module('test', ['btford.socket-io']);
// app.requires.push('btford.socket-io');
app.controller('testController', function ($scope, $http) {
$scope.test = "This is test.";
$scope.loadData = function() {
$http.get('/data').success(function(data) {
$scope.data = data;
});
};
$scope.loadData();
});
这是layout.jade:
doctype html
html
head
title= title
link(rel='stylesheet', href='/stylesheets/style.css')
script(src='http://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js')
script(src='http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js')
script(src='/socket.io/socket.io.js')
script(src='javascripts/core.js')
body(ng-app="test")
block content
这是index.jade:
extends layout
block content
div(ng-controller="testController")
p {{test}} Result should be 15 and is: {{5 + 10}}
br
p {{data[0].name}}
在添加依赖项之前,指令显示预期结果:
This is test. Result should be 15 and is: 15
MyName
但是在添加依赖项之后,它们只显示为带有错误[$injector:modulerr]的纯文本:
{{test}} Result should be 15 and is: {{5 + 10}}
{{data[0].name}}
有谁知道为什么会这样,我怎样才能让它发挥作用?
答案 0 :(得分:0)
正如评论中所述,向HTML添加<script>
标记解决了它。
唯一需要注意的是我必须将app.use(express.static(path.join(__dirname, 'bower_components')));
添加到app.js才能使用想要的路线