javascript - Ui-Router 与父级的深层嵌套状态

标签 javascript angularjs angular-ui-router state

我一直在四处寻找,但没有发现任何可以满足我需要的东西,或者任何一般的东西。

我正在构建的应用程序有以下状态:

app - 主要父状态

facebook - Facebook 所有路由的父状态

adwords - Adwords 所有路由的父状态

bing - Bing 所有路由的父状态

... - 还有很多...很多...

例如,如果我想要 Facebook 概述,那就是 app.facebook.overview。但是,它在我尝试过的任何方式中都不起作用(dot 注释、声明中的 parent 等)

$stateProvider
    .state('app', {
        url: '',
        abstract: true,
        templateUrl: 'assets/views/default.html'
    })
    .state('app.facebook', {
        url: '/facebook',
        abstract: true
    })
    .state('app.facebook.overview', {
        url: '/overview',
        templateUrl: '/assets/views/facebook/overview/overview.html',
        controller: 'FacebookOverviewCtrl'
    });

我尝试了abstractparent的每种组合,以及dot注释。我还没能让它发挥作用。它失败并给出以下错误:

Could not resolve 'app.facebook.overview' from state 'app'

我在这里做错了什么?我不明白,我遵循了它的文档,并在 Stackoverflow 上查看了这里的许多问题。有什么想法吗?

编辑:

我已经找到问题所在了。基本错误。我没有在主 angular.module 声明中包含该模块。嗯...凌晨 4 点为您编码。

最佳答案

我的回答基于这个here 基本上,您只需将 /facebook 的 url 设置为 url: ':facebook' 就可以了。 http://plnkr.co/edit/LQLYTu0YHlvTdB26vQcP

关于javascript - Ui-Router 与父级的深层嵌套状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38003057/

相关文章:

angularjs - 使用参数更改状态后防止 ui-router 状态 Controller 重新加载

javascript - 在index.html文件中使用JS变量

javascript - AngularJS 通过 $stateProvider 从 ui.router 更改特定 View

javascript - 如何在窗口调整大小后获取高度和宽度

javascript - 使用 karma 测试 angularjs 时初始化 Controller 时出错

javascript - Visual Studio Code Intellisense typescript 不工作

ios - Ionic - 嵌入式视频不适用于 ios

javascript - CHtml 链接为父级返回 null

asp.net-mvc - 如何在 AngularJS 中向表单数据添加另一个参数

javascript - 数据未显示在创建的指令中