Javascript 在模态angularjs中调用$state.go
我在模态控制器中添加了一个$state.go,在我的提交按钮功能中,第一次它被调用时,但当我尝试再次打开模态并在另一次提交时,$state.go没有被调用 ModalCtrler.jsJavascript 在模态angularjs中调用$state.go,javascript,angularjs,angular-ui-bootstrap,Javascript,Angularjs,Angular Ui Bootstrap,我在模态控制器中添加了一个$state.go,在我的提交按钮功能中,第一次它被调用时,但当我尝试再次打开模态并在另一次提交时,$state.go没有被调用 ModalCtrler.js $scope.addElet= function(){ ------ $state.go('state1',{OBJ: OBJ}); } 模式在my run app.js中定义: myApp.run(function($rootScope, $modal,$state) { $rootS
$scope.addElet= function(){
------
$state.go('state1',{OBJ: OBJ});
}
模式在my run app.js中定义:
myApp.run(function($rootScope, $modal,$state) {
$rootScope.$on('$stateChangeStart', function(event, toState,toParams) {
if (toState.name == 'addPopup') {
$modal.open({
templateUrl : 'add.html',
controller : 'ModalCtrler',
backdrop: 'static',
keyboard: false,
});
event.preventDefault();
}
}
}
当我在ui serf中单击时,将调用该模式:
<a ui-sref="addPopup({OBJ: OBJ})">
<button type="button" class="btn btn-add pull-right">ADD</button>
</a>
我的代码中缺少什么东西了吗?你有什么想法?我想你的问题是: 在调用$state.go'state1',{OBJ:OBJ}之前,对modal不做任何操作 仅在调用$state.go后才尝试隐藏它 比如:
$scope.addElet= function(){
$modalInstance.close(); // or $modalInstance.dismiss();
$state.go('state1',{OBJ: OBJ});
}
通过重新设定状态解决的问题:
$state.go('state1', {OBJ: OBJ}, { "reload": 'state1''});
多亏了,我尝试了您的解决方案,但它没有被调用。是的,我找到了它,但它没有进入state=state1的控制器,因为state没有changed@selma那么,这是一种正确的行为,你能澄清一下吗?通常在打电话给州政府时,它必须改变州政府,在这里它没有改变。我尝试了这个$state.go'state1',{OBJ:OBJ},{reload:true};但它在每个提交的模式上输入两次
$state.go('state1', {OBJ: OBJ}, { "reload": 'state1''});