我有一个$ scope。$ on函数,当我将一个未完成的操作留在另一个选项卡上时,它可以正常工作:
$scope.$on("$stateChangeStart", function(event, toState) {
if (some conditions) {
event.preventDefault();
$modal.open({
templateUrl: 'prompt modal template',
controller: 'prompt modal controller',
backdrop: 'static',
size: 'sm'
})
.result.then(function (result) {
if (result === 'confirm') {
myService.doSomething(arg).then(function(result) {
$scope.doAnotherThing();
});
$state.go(toState.name);
}
else {
//stay where you were
}
});
}
});
现在我想将ui-select2更改事件添加到此函数中,因此当用户在未完成操作时尝试更改ui-select2选项时,将弹出提示模式并阻止任何更改,除非用户确认。 我的ui-select2 ng-change =“selectCity()”看起来像:
$scope.selectCity = function() {
//some stuff
}
我尝试在$ stateChangeStart之后添加$ scope.selectCity / selectCity作为事件,但是没有用。
如果有人可以帮助我,我将不胜感激!感谢