指令exportAs不工作

问题描述 投票:2回答:1

我在使用exportAs属性的时候遇到了一个问题。

app.component.ts

import {Component} from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {}

app.component.html

<div *repeat="5; let i = index; let odd = odd;" [class.odd]="odd" #r="repeatDir">{{i}} - Hello World!</div>

repeat.directive.ts

import {Directive, Input, OnInit, TemplateRef, ViewContainerRef} from '@angular/core';

@Directive({
  selector: '[repeat]',
  exportAs: 'repeatDir'
})
export class RepeatDirective implements OnInit {
  @Input() repeat: number;

  constructor(private _templateRef: TemplateRef<any>,
              private _viewContainerRef: ViewContainerRef) {}

  ngOnInit() {
    for (let i = 0; i < this.repeat; i++) {
      this._viewContainerRef.createEmbeddedView(this._templateRef, {
        index: i,
        odd: i % 2 === 1
      });
    }
  }
}

当我运行这个例子时,我得到了一个错误。enter image description here

angular angular2-directives
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.