无论是否在网址中设置 :id
参数,我都会尝试显示相同的视图。我有这个但 /cases
路线似乎没有 :id
。
.state 'messages',
url: '/cases',
views:
'':
templateUrl: 'views/messages.html',
controller: 'MessagesCtrl'
'ticketList@messages':
templateUrl: 'views/messages/list.html'
'ticketComments@messages' :
templateUrl: '/views/messages/comments.html'
'ticketDetail@messages' :
templateUrl: '/views/messages/detail.html',
.state 'messages.id',
url: '/cases/:id',
views:
'':
templateUrl: 'views/messages.html',
controller: 'MessagesCtrl'
'ticketList@messages':
templateUrl: 'views/messages/list.html'
'ticketComments@messages' :
templateUrl: '/views/messages/comments.html'
'ticketDetail@messages' :
templateUrl: '/views/messages/detail.html',
答案 0 :(得分:1)
你几乎就在那里 - 只是孩子从父母那里继承了 url
。因此,为了使案件正常运作,我们应该这样做:
.state 'messages',
url: '/cases',
....
.state 'messages.id',
// url: '/cases/:id', // instead of this
url: '/:id', // we need this
我们可以做得更多,例如使用 params :{}
来定义更精确的设置。检查这些例如: