重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
小编给大家分享一下angularjs中如何使用ui-router分层,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
创新互联建站是一家专注于网站设计制作、成都网站建设与策划设计,根河网站建设哪家好?创新互联建站做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:根河等地区。根河做网站价格咨询:18980820575首先我们先定义一个总的state如:
.state('home', { url: '/home?backKey', // abstract: true, templateUrl:'home/home.html', controller:'homeCtrl' })
在homeCtrl中可以为空,看需求吧。因为这个是最顶层的state所以在angular.module中一定要把下一层的路由angular.module依赖进来。如果有多个模块那就分别依赖进来,用逗号隔开,这里就依赖一个模块来说明下。如var m = angular.module("ms.homeRouter", ['ms.hrRouter']);
而在home.html中必须要存在一个
上面已经说到一个ms.hrRouter的模块依赖进来,现在就已这个为例来说明下配置:在这个模块中新建个js文件,定义一个angular.module,名字就是ms.hrRouter。
var m = angular.module("ms.hrRouter", [ 'ms.hrDismissionRouter']);
这个就是hr的模块,在这模块中又有该模块的子模块。angular.module名依赖进来,在这模块的路由中先配置下总路由,然后再在该路由下分下一层模块(或者子页面)路由。
.state('home.hr', { url: '/hr', template: '', controller: 'hrCtrl' }) .state('home.hr.dismission', { url: '/dismission', template: ' ', controller: 'hrNextCtrl' }) });
说明下上面的代码:state名为home.hr说明这个是在hr模块中的顶层路由。其template为'
到现在已经完成了顶层路由home到hr模块路由再到dismission模块路由说明。
now到dismission模块中的详情页面的路由配置:在dismission模块中也新建一个路由js文件。这个模块的angular.module配置为var m = angular.module("ms.hrDismissionRouter", []);
因为这个是最底层的路由了已经再也没有子路由依赖了,所以后面的[]中是空的。在这页面中的state配置如:
.state('home.hr.dismission.commonApproval', { url: '/commonApproval?taskId&openid&doType', templateUrl: 'hr/dismissionAppl/dismissionAppl.html', resolve: { dismRsl: getResolve() }, controller: 'dismissionApplCtrl' }) ]);
从state名字也可以看出,这个是在dismission模块的子层。url也是这个页面的路由名,以及这个页面需要带的参数。这里的resolve的作用是在页面加载前先执行getResolve()方法。该方法的目的是获取数据,达到进该页面前先获取到该页面的数据,等到该页面的所有数据都获取完后再跳转到该页面。这个resolve属性不懂的可以百度,或者我博客中也有篇介绍的,可以看看。
好了!可能说得不是太明白但总体思路就是这样。
Note: 最好是在每层模块中都新建两个js文件,一个是router.js一个是controller.js这样好管理。这是模块分层对应的文件分层。
以上是“angularjs中如何使用ui-router分层”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联网站建设公司行业资讯频道!
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。