ui.router嵌套视图继承父表单

时间:2015-10-17 20:40:22

标签: javascript angularjs forms angular-ui-router angular-directive

是否可以让ui.router嵌套视图继承它的父母形式?我想组织我的表单来嵌套视图,同时在父控制器上利用角度形式的验证。

我最初在没有ui.router的情况下通过使用带有require: ['^form']的指令(来处理特定的表单逻辑)来实现这一点,但是控制器的视图变得太大/不可维护。因此输入了ui.router的嵌套视图,但似乎我失去了将所有父表单对象传递给ui.router的嵌套视图以最终通过的能力进入我之前使用的指令(使用require['^form']的相同指令)。

之前有人遇到过这个问题吗?

1 个答案:

答案 0 :(得分:0)

$stateProvider
    .state('form', {
        abstract: true,
        url: '/form',
        controller: FormController,
        template: '<ui-view/>'
    })
    .state('form.child1', {
        url: '/child-one',
        controller: ChildOneController
    })
    .state('form.child2', {
        url: '/child-two',
        controller: ChildTwoController
    });

在此示例中,父级的范围属性继承状态链。所以FormController的所有范围属性都可以在子节点中使用,在本例中是ChildOneController和ChildTwoController。

另请注意,通过解析和自定义数据属性解析的依赖项将从父作用域继承。