如何定义不同父母但嵌套相同模板的多个嵌套状态
问题描述:
我为购买/更新/传输/域名创建了一个移动网站。如何定义不同父母但嵌套相同模板的多个嵌套状态
整个应用程序有4个模板连接到功能链。
Buy : Search -> (login if needed?) -> Pay -> -Confirmation
Renew : Choose -> (login if needed?) -> Pay -> -Confirmation
Transfer: Choose -> (login if needed?) -> Pay -> -Confirmation
虽然应用程序具有相同的模板,但功能和标题不同。我希望能够检查每个状态中的父状态,以便进行动态更改并切换请求字符串。
最简单的方法是在我的stateProvider
中定义12条(4X3)路线。但我正在寻找更有效的方法来做到这一点,团结buy.search, renew.search, transfer.search
和其他三组路线。可能吗?有人可能会建议我采用其他方法吗?
感谢
=== UPDATE ===
当前stateProvider
.state('app.buy.search', {
url: "/search",
templateUrl: "templates/search_domain.html",
controller: 'SearchCtrl'})
.state('app.buy.login', {
url: "/buy/login",
templateUrl: "templates/login.html",
controller: 'LoginCtrl'})
.state('app.buy.pay', {
url: "/buy/pay",
templateUrl: "templates/pay.html",
controller: 'PayCtrl'})
.state('app.renew.search', {
url: "/search",
templateUrl: "templates/search_domain.html",
controller: 'SearchCtrl'})
.state('app.renew.login', {
url: "/buy/login",
templateUrl: "templates/login.html",
controller: 'LoginCtrl'})
.state('app.renew.pay', {
url: "/buy/pay",
templateUrl: "templates/pay.html",
controller: 'PayCtrl'})
.state('app.transfer.search', {
url: "/search",
templateUrl: "templates/search_domain.html",
controller: 'SearchCtrl'})
.state('app.transfer.login', {
url: "/buy/login",
templateUrl: "templates/login.html",
controller: 'LoginCtrl'})
.state('app.transfer.pay', {
url: "/buy/pay",
templateUrl: "templates/pay.html",
controller: 'PayCtrl'})
答
可以通过应用dynamic url
降低路由器的配置。在你的情况下,页面(搜索,付费,登录)对于模块(购买,续费,转账)是相同的。 http://plnkr.co/edit/NGsZJB?p=preview
发表您的当前stateprovider配置为更好地理解 – Asik 2014-11-23 13:43:39
@Asik完成:所以,你可以按如下
演示更改配置!举个例子 – 2014-11-23 13:53:09
Cheeck这个pluncker http://plnkr.co/edit/NGsZJB?p=preview。你可以将它减少为3个配置,而不是12个配置。在URL中通过模块但状态保持不变。此外,你可以得到当前模块参数在控制器,如果你需要的手段 – Asik 2014-11-23 14:32:59