搜索

首页  >  问答  >  正文

angular.js - angular,公共的代码你们是放在哪里的

我最开始是放在rootScope,发现这是全局属性,就放弃了
又不想在每个需要用到的controller里面都写一遍,之后我选择放入指令directive里面的controller里面,之后,我又发现,directive是依赖HTML的,如果方法一样,但是我HTML不一样,指令就没办法用来了。
说得有点乱,我的意思是:我的一个方法所有的地方都可能用得到,我需要放在哪里?以后用得上的时候直接调用方法。
比如:把它作为公共的代码,应该怎么写

给我你的怀抱给我你的怀抱2745 天前621

全部回复(1)我来回复

  • 淡淡烟草味

    淡淡烟草味2017-05-15 17:03:00

    最好用 service或者factory

    // use factory
    angular.module('YourAppName')
        .factory('YourFuncName', function() {
            return function() {
                // your function code here
            }
        });
        
    // use service
    angualr.module('YourAppName')
        .service('myUtils',function() {
            this.yourFuncName = function() {
                // your function code here
            }
        })

    对于截图中的情况

    angular.module('YourAppName')
        .factory('YourFuncName', function() {
            return function($scope) {
                return function(modal) {
                    // Use $scope Here
                }
            }
        });
        
    // 使用时
    somthing.then(yourFuncName($scope))

    回复
    0
  • 取消回复