我试图将我的JS文件中的一个函数移动到我的Angular控制器中,因为我从控制器内部调用了这个函数,将它放在那里而不是转到另一个文件是有意义的
我似乎无法让$ http服务知道这个函数(highlighter1)
(function(angular) {
'use strict';
angular.module('myApp', ['ui.bootstrap'])
.controller('Controller', function($scope, $http) {
$scope.highLighter1 = function(side, string, load, callback) {}
$http.get('/comments')
.success(function(response) {
$scope.comments = response;
var allEl=[];
var i;
for (i=0; i<response.length; i++) {
allEl.push(response[i]._id);
}
$http.post('/ranges', {"commentIds":allEl})
.success(function(result){
result.forEach(function(item){
highlighter1(item.dataAction, item.rangyObject, true);
})
})
});
})
})(window.angular);
我在控制台中收到“无法提交变量highlighter1”的错误,所以我猜我需要以某种方式在不同的范围内注册它?
答案 0 :(得分:2)
这不是一个全球性的甚至是本地的功能。它是$scope
的属性。所以你需要$scope.highLighter1(...)
。
另请注意首都L
。 JavaScript区分大小写。