angularjs 配置路由按需加载html\js文件[不依赖第三方插件]

//配置app
app.config(function($controllerProvider, $compileProvider, $filterProvider, $provide, $routeProvider) {
    //添加注册机制--按需加载用
    app.register = {
        controller: $controllerProvider.register,
        directive: $compileProvider.directive,
        filter: $filterProvider.register,
        factory: $provide.factory,
        service: $provide.service
    };
    //resolve事件函数- 路由用
    app.asyncjs = function (js) {
        return ["$q", "$route", "$rootScope", function ($q, $route, $rootScope) {
            var deferred = $q.defer();
            var dependencies = js;
            $script(dependencies, function () {
                $rootScope.$apply(function () {
                    deferred.resolve();
                });
            });
            return deferred.promise;
        }];
    };

    /**
     *路由规则;
     * load:app.asyncjs html页面依赖的js文件列表
     */
    var templateBaseUrl="html文件存放路径/";
    $routeProvider.when('/login',        {templateUrl: templateBaseUrl+'login.html',reloadOnSearch: false});
    $routeProvider.when('/home',         {templateUrl: templateBaseUrl+'home.html',
        resolve: {load:app.asyncjs(['services/service1.js','controllers/1Controller.js'])}
    });


});
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值