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