Webpack延迟负载控制器的角度

时间:2015-11-07 16:30:36

标签: angularjs webpack oclazyload

我的目录结构是每个模块(页面):

/app
    app.js
    /states
        /home
            home.module.js
            home.less
            home.controller.js
            home.html

这是我的home.module.js

//import {HomeController} from "./home.controller";

function homeConfig ($stateProvider) {

    $stateProvider
        .state('home', {
            url: '/home',
            templateProvider: ($q) => {
                return $q((resolve) => {
                    require.ensure([], () => resolve(require('./home.html')), 'home');
                });
            },
            controller: 'HomeController as Home',
            resolve: {
                load: ($q, $ocLazyLoad) => {
                    return $q((resolve) => {
                        require.ensure(['./home.html'], () => {
                            let ctrl = require('./home.controller');
                            $ocLazyLoad.load(ctrl);
                            resolve(ctrl);
                        }, 'home');
                    });
                }
            }
        })
}

export default angular.module('home', [])
        .config(homeConfig)
        //.controller('HomeController', HomeController)

如何正确使用oclazyLoad并加载我的家庭控制器并进行注册? 关键是模块已预先加载,但只有当用户进入主页状态时,内容(html,controller,less)才会延迟加载。所有这些都应该通过webpack捆绑到一个home.js文件中

0 个答案:

没有答案