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

查看:299
本文介绍了angular.js - angular,公共的代码你们是放在哪里的的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

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

解决方案

最好用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))

这篇关于angular.js - angular,公共的代码你们是放在哪里的的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆