[AngularJS] Lazy Loading modules with ui-router and ocLazyLoad

We've looked at lazy loading with ocLazyLoad previously, but what if we are using ui-router and want to lazy load modules when we change states?

 

angular.module("demo", ["ui.router", "oc.lazyLoad"])
    .config(function ($stateProvider) {
        $stateProvider.state('store', {
            templateUrl: "store/store.html",
            controller: "StoreCtrl as store",
            resolve: {
                store: function ($ocLazyLoad) {
                    return $ocLazyLoad.load(
                        {
                            name: "store",
                            files: ["store/store.js"]
                        }
                    )
                }
            }
        })
    })

    .controller("AppCtrl", function ($state) {
        var app = this;
        app.click = function () {
            $state.go("store")
        }
    })

 

posted @ 2015-01-04 05:48  Zhentiw  阅读(803)  评论(0编辑  收藏  举报