我想在特定网址上显示Angular Material Dialog,同时将之前访问的路由保持为背景状态.
因此,工作流程将是:
>用户访问带有url business / 6 / contacts的页面. (state:business.contacts)
>用户访问网址业务/ 6 /结帐. (state:business.checkout)
它应该将联系人页面保留在后台并使用给定的URL加载结帐模式.
但是,对于用户访问url business / 6 / settings的另一个工作流程,它应该将设置页面保留为背景,并在用户访问business / 6 / checkout时加载结帐模式.
在任何地方点击外部都应该关闭模态并加载回上一页.
最佳答案 您应该将这些模态状态设置为联系人和设置页面的子状态.在此场景中,您的网址将分别为business / 6 / contacts / checkout和business / 6 / settings / checkout.你必须在你的网址中有一些标识符来分隔这两种情况.否则,当您直接从网址进入页面时,如果您使用相同的网址,则无法区分这两种情况.
这是一个例子:
var checkoutStateObject = {
url: '/checkout'..,
controller:"CheckoutModalCtrl" // same controller for below state
};
yourApp.state("business", {
url: "/business/:businessId"...}) //parent state
.state('business.contacts', {
url: '/contacts'..
})
.state('business.settings', {
url: '/settings'..
})
.state('business.contacts.checkout', checkoutStateObject)
.state('business.settings.checkout', checkoutStateObject)