相关疑难解决方法(0)

Angular 4在哪里为*ngIf定义"as local-var"行为?

我试图了解ngIf定义的"as local-var"可选行为在哪里,例如: *ngIf="user$ | async as user"

尝试在源代码中查看明显的位置,例如 https://github.com/angular/angular/blob/master/packages/common/src/directives/ng_if.ts

但代码中没有任何内容,只有文档.

有没有人知道这个魔法发生在代码中的哪个位置?

open-source rxjs angular

6
推荐指数
1
解决办法
4340
查看次数

`value ="{{todo.title}}"`和`[value] ="todo.title"`之间有什么区别?

我一直在Angular 2做一个todo应用程序来掌握概念...... value="{{todo.title}}"和之间的区别是[value]="todo.title"什么?

data-binding angular

5
推荐指数
1
解决办法
678
查看次数

Angular - 指令如何“查看”模板和 ViewContainer?

我有一个简单的组件,它通过名为的自定义指令在延迟后注入数字 *appDelay

我已经知道这*是 Angular 将语法去糖化为类似的提示

<ng-template ...>
...actual markup
</ng-template>
Run Code Online (Sandbox Code Playgroud)

我也知道我们可以将组件/模板注入到viewContainervia :

  this.viewContainerRef.createEmbeddedView/Component(this.templateRef);
Run Code Online (Sandbox Code Playgroud)

指令代码是:

@Directive({
  selector: '[appDelay]'
})
export class DelayDirective {
  constructor(
    private templateRef: TemplateRef<any>,private viewContainerRef: ViewContainerRef
  ) {  }

  @Input() set appDelay(time: number): void {
    setTimeout(()=>{
      this.viewContainerRef.createEmbeddedView(this.templateRef);
    }, time);
  }
}
Run Code Online (Sandbox Code Playgroud)

文档指出:

要访问 Element 的 ViewContainerRef,您可以在 Element 上放置一个注入了 ViewContainerRef 的指令,也可以通过 ViewChild 查询获取它。

题:

一般的伪形式中:什么是模板“字符串值”templateRefviewContainerRef

恕我直言,脱糖模板将类似于:

<ng-tempalte ...>
   <card *appDelay="500 * item">
        {{item}}
   </card>
</ng-template>
Run Code Online (Sandbox Code Playgroud)

所以 ViewContainerRef将是对<ng-tempalte …

javascript angular

2
推荐指数
1
解决办法
2553
查看次数

标签 统计

angular ×3

data-binding ×1

javascript ×1

open-source ×1

rxjs ×1