【问题标题】:Controlling order of directive evaluation in Angular 2Angular 2中指令评估的控制顺序
【发布时间】:2016-03-02 19:21:44
【问题描述】:

我想在 Angular 2 中创建一个属性指令。它需要在其主机上有一个点击处理程序。需要在评估元素上的其他指令之前添加点击处理程序,因为它控制对某些功能的访问。在 Angular 1 中,您可以在创建指令时使用优先级选项来执行此操作。 Angular 2 中是否有某种等价物?

谢谢, 追逐

【问题讨论】:

  • 没见过这样的东西。我想功能请求是正确的。
  • 在这种情况下,使用Component 代替托管您的其他指令不是更好吗?

标签: javascript angular angular2-directives


【解决方案1】:

Angular 2 中的priority 不受支持,也没有任何添加它的计划。

组件指令不能使用以下属性:

优先级终端。虽然 Angular 1 组件可能会使用这些,但它们 没有在 Angular 2 中使用,最好不要编写这样的代码 依赖他们。

https://angular.io/docs/ts/latest/guide/upgrade.html#!#using-component-directives

【讨论】:

    【解决方案2】:

    我发现在 Angular 2 中评估指令的顺序可以在 ngModule 装饰器的声明块中定义。像这样:

    @NgModule({
        imports: [BrowserModule], 
        // SecondDirective will be evaluated before FirstDirective
        declarations: [AppComponent, SecondDirective, FirstDirective],
        bootstrap: [AppComponent]
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-21
      • 1970-01-01
      相关资源
      最近更新 更多