Heim > Fragen und Antworten > Hauptteil
在目前工作中,遇到很多去判断一个字符串是否在一个数组里的需求,类似jQuery里的inArray
函数,我在全局的MainCtrl
控制器里定义了一个判断方法,返回布尔值,现在需要在指令里调用这个方法。
后来我又想了下,是不是应该把这个定义放在Service
里,让其他控制器和指令共享这个服务,不知道我这个想法是否正确,望各位大神指教!
怪我咯2017-04-11 11:56:01
思路正确,善于思考,点赞
补充:
你思路都有了,怎么还缺demo?^^,来给你个简单的
app.service('utils', [function() {
this.inArray = function(arr, str) {
return arr.indexOf(str) >= 0;
};
}]);
然后你就可以在你的各种controller
,directive
里用了,譬如:
app.directive('fuckDir', ['utils', function(utils) {
return {
restrict: 'AE',
scope: {},
link: function() {
console.log(utils.inArray(['hello', 'fuck'], 'fuck'));
}
};
}]);
ringa_lee2017-04-11 11:56:01
angular.module("myapp",["util"]).controller("myCtrl",["utilService",function(utilService){
utilService.inArray();
}]);
angular.module("util").factory("utilService",function(){
return {
//do something...
inArray : function(){}
}
});
我是这样写。。给你参考