angular-ui-router – 如何设置强制路由参数
发布时间:2020-12-17 18:02:57 所属栏目:安全 来源:网络整理
导读:我想制作一个有强制参数的路线.如果没有,它应该落入 $urlRouterProvider.otherwise( “/家”); 目前的路线: function router($stateProvider) { $stateProvider.state("settings",{ url: "^/settings/{id:int}",views: { main: { controller: "SettingsCont
我想制作一个有强制参数的路线.如果没有,它应该落入
$urlRouterProvider.otherwise( “/家”); 目前的路线: function router($stateProvider) { $stateProvider.state("settings",{ url: "^/settings/{id:int}",views: { main: { controller: "SettingsController",templateUrl: "settings.html" } } }); } 目前以下两条路线均有效: > http://myapp/settings //应该是无效的路线 有任何想法吗? 解决方法
使用
state change start listener检查params是否通过:
$rootScope.$on('$stateChangeStart',function (event,toState,toParams,fromState,fromParams) { if(toState.name==="settings") { event.preventDefault(); //stop state change if (toParams.id===undefined) $state.go("home"); else $state.go(toState,toParams); } }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |