我无法弄清楚我在这里做错了什么。定义的最后一条路线不起作用:
// Abstract route
$stateProvider.state('main', {
'abstract': true,
url: '/main/',
controller: 'mainController',
templateUrl: '/app/views/main.html'
});
// This works using "#/main/program/"
$stateProvider.state('main.program', {
url: 'program/',
controller: 'programController',
templateUrl: '/app/views/main.program.html'
});
// This works using "#/main/program/details/123/"
$stateProvider.state('main.program.details', {
url: 'details/:programId/',
controller: 'programDetailsController',
templateUrl: '/app/views/main.program.details.html'
});
// This should work using "#/main/program/details/123/editor"
// but just changes the url, doesn't load the view,
// and the controller never executes!
$stateProvider.state('main.program.details.editor', {
url: 'editor/',
controller: 'programDetailsEditorController',
templateUrl: '/app/views/main.program.details.editor.html'
});
答案 0 :(得分:1)
尔加!简单的问题。我在前两个视图中有<div ui-view></div>
,但忘记将其添加到main.program.details.html。我希望这可以帮助其他人有相同的症状。
答案 1 :(得分:0)
检查浏览器控制台中的任何错误或查找所有已加载的脚本文件都会给出一个线索。您可以尝试使用Batarang扩展(可能对此方案没有帮助)