Javascript 以前的状态视图不支持';t使用自定义模式url保持在打开的UI引导模式的后台
当我点击链接Javascript 以前的状态视图不支持';t使用自定义模式url保持在打开的UI引导模式的后台,javascript,angularjs,angular-ui-router,angular-ui-bootstrap,state,Javascript,Angularjs,Angular Ui Router,Angular Ui Bootstrap,State,当我点击链接时,模式会用自定义URL打开,但在后台是一个空白视图,我希望打开时前一个状态仍显示在模式后面 header.html 我建议,将该状态'new-call'设置为所有'calls' .state('calls', { url: '/calls', ... .state('calls.new-call', { url: '/new-call', ... 现在,若用户要创建新的调用,他将已经处于“调用”状态,这样,它的视图就不会消失,just modal
时,模式会用自定义URL打开,但在后台是一个空白视图,我希望打开时前一个状态仍显示在模式后面
header.html
我建议,将该状态
'new-call'
设置为所有'calls'
.state('calls', {
url: '/calls',
...
.state('calls.new-call', {
url: '/new-call',
...
现在,若用户要创建新的调用,他将已经处于“调用”状态,这样,它的视图就不会消失,just modal将被打开…感谢您的贡献Radim:)我想让它不特定于某个状态,因为链接位于网站的标题中,用户应该能够导航到它所在的任何位置,而且url应该是point is-UI Router仅显示当前状态层次结构。其余的都被设计移除了。假设您没有“new calll”状态模式。。只是一个普通的状态,而另一个状态(您来自)将保持渲染状态。错;)所以,解决的办法是——把你的情态动词作为孩子移动到你的状态。它可以在配置过程中轻松完成(一些迭代过度状态应该用child扩展),或者使用decorator(例如,或
.state('new-call', {
url: '/new-call',
resolve: {
PreviousState: [
"$state",
function ($state) {
var currentStateData = {
Name: $state.current.name,
Params: $state.params,
URL: $state.href($state.current.name, $state.params)
};
return currentStateData;
}
]
},
onEnter: ['PreviousState', '$stateParams', '$state', '$modal', '$location',
function(PreviousState, $stateParams, $state, $modal, $location){
$modal.open({
templateUrl: 'views/new-call.html',
controller: 'NewCallCtrl'
}).result.finally(function(){
$state.go(PreviousState.Name, PreviousState.Params);
});
console.log($stateParams);
}]
})
.state('calls', {
url: '/calls',
...
.state('calls.new-call', {
url: '/new-call',
...