我可以在ncyBreadcrumb中拥有动态父级吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我可以在ncyBreadcrumb中拥有动态父级吗?相关的知识,希望对你有一定的参考价值。
这是我的index.route.js
,我希望我的父属性是动态的,就像用户点击它时,它应该在更改状态之前显示确认提示。
.state('user.edit', {
url: '/{id}/edit',
params: {
id: {value: 'new'}
},
templateUrl: 'app/user.html',
controller: 'EditUserController',
controllerAs: 'vm',
ncyBreadcrumb: {
label: 'Add/Edit User',
parent: 'user.list' //(this one i want dynamic)
}
})
请帮我。
答案
您需要收听$stateChangeStart
事件,并在用户选择取消时阻止它。在你的控制器中:
vm.$on('$stateChangeStart',
function(event, toState, toParams, fromState, fromParams, options){
console.log(event, toState, toParams, fromState, fromParams, options); // Here you can see what parameters are passed to the event callback function
if( !confirm('are you sure?') ) {
event.preventDefault();
}
});
顺便说一句 - vm
是$scope
- 不知道你如何在你的控制器中引用它。
您还可以将它绑定到应用程序的$rootScope
阶段中的run()
- 这样您就可以在全局级别上检测状态更改,而不仅仅是在特定状态内。你将使用toState.name
知道你要去哪个州和fromState.name
知道你要离开的国家的名字。
以上是关于我可以在ncyBreadcrumb中拥有动态父级吗?的主要内容,如果未能解决你的问题,请参考以下文章