仍然找到我的方式与角度和我得到"未捕获的ReferenceError:y未定义"在线" .directive(' y',[y,function(y){"。它就像它没有加载服务。我也是尝试将脚本从人体模型移到头部,但没有做到。
angular.module('fofApp', ['appRoutes'])
.factory('y',['$rootscope',function($rootScope) {
return {val: "he"};
}])
.directive('yow',[y,function(y){
return {
restrict: "E",
template: "<h1>aaaaah</h1>"
};
}]);
我的HTML是
<!doctype html>
<html>
<head>
</head>
<body ng-app="fofApp">
<yow></yow>
<script src="libs/angular/angular.js"></script>
<script src="js/app.js"></script>
</body>
</html>
答案 0 :(得分:1)
使用依赖注入时的缩小保护需要字符串作为第一个参数(以匹配传递给函数的参数的顺序/数量),这始终是 last 参数。
将指令中的y更改为字符串。像这样:
.directive('yow',['y',function(y){
这是一个小提琴:http://jsfiddle.net/u4v4cafm/(控制台中没有错误)
答案 1 :(得分:0)
不确定这是否是问题,但工厂希望您返回一个对象。尝试将其更改为:
angular.module('fofApp', ['appRoutes'])
.factory('y',['$rootscope',function($rootScope) {
return { value :"he" }
}])