加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 如何使用angular-ui-router将路由配置拆分为多个文

发布时间:2020-12-17 17:26:11 所属栏目:安全 来源:网络整理
导读:目前我有这样一个文件: app.config([ '$locationProvider','$sceDelegateProvider','$sceProvider','$stateProvider',($locationProvider,$sceDelegateProvider,$sceProvider,$stateProvider) = { $locationProvider.html5Mode(true); $sceProvider.enabled
目前我有这样一个文件:

app.config([
    '$locationProvider','$sceDelegateProvider','$sceProvider','$stateProvider',($locationProvider,$sceDelegateProvider,$sceProvider,$stateProvider) => {

        $locationProvider.html5Mode(true);
        $sceProvider.enabled(false);

        var home = {
            name: 'home',//template: '<div data-ui-view></div>',url: '/home/'
        };

        var homeAccess = {
            name: 'home.access',url: 'access',views: {
                'home@': {
                    templateUrl: 'app/access/partials/webapi.html'
                }
            },onExit: ['accessService',(acs: IAccessService) => {
                acs.clear();
            }]
        };



    $stateProvider
        .state(homeAccess)
        .state(home);
}])

问题是,我有这么多州,现在已经发展到超过1,200行.

是否可以将app.config拆分为多个文件,如果是这样,我该怎么做?

解决方法

您可以看一下这个,以了解如何在Angular中构建代码
Best Practices Directory Structure.
您可以使用状态创建不同的文件,并在每个功能文件夹中将它们分开.如果您不想按文件夹分隔它们,只需将它们放在单独的文件中即可.在每个文件中,您只需导出您注册为配置的功能.

这是本地路线(home-route.js):

function stateConfig ($locationProvider,$stateProvider) {
        $locationProvider.html5Mode(true);
        $sceProvider.enabled(false);

        var home = {
            name: 'home',template: 'Home',url: '/home'
        };



    $stateProvider
        .state(home);
}

module.exports = stateConfig;

这将是访问路由(home-access-route.js):

function stateConfig ($locationProvider,$stateProvider) {
        $locationProvider.html5Mode(true);
        $sceProvider.enabled(false);

        var homeAccess = {
            name: 'home.access',url: '/access',template: 'Access',parent: 'home'
        };



    $stateProvider
        .state(homeAccess)
}

module.exports = stateConfig;

然后在您的模块/应用程序的index.js文件中,您将执行以下操作:

var TestsRoute  = require('./home-route.js');
var HomeAccessRoute  = require('./home-access-route.js');

var app = angular.module('HomeAccess',[]);

app.config(['$locationProvider',HomeRoute]);    
app.config(['$locationProvider',HomeAccessRoute]);

module.exports = app.name

因此,在初始化应用程序的位置,您将拥有已创建的所有单独模块,并将它们注册为应用程序的依赖项

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读