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 因此,在初始化应用程序的位置,您将拥有已创建的所有单独模块,并将它们注册为应用程序的依赖项 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |