私はes6、typescript、Angular2の新機能を使用しています。私はディレクティブの例を試しました。それはAngular2注射剤はありますか?
import { Directive, ElementRef, Input, Renderer } from '@angular/core';
@Directive({ selector: '[myHighlight]' })
export class HighlightDirective {
constructor() {
console.log(new ElementRef())
//renderer.setElementStyle(el.nativeElement, 'backgroundColor', 'green');
}
}
もこれを試してみました。..
import { Directive, ElementRef, Input, Renderer } from '@angular/core';
@Directive({ selector: '[myHighlight]' })
export class HighlightDirective {
constructor(ElementRef, Renderer) {
console.log(new ElementRef())
//renderer.setElementStyle(el.nativeElement, 'backgroundColor', 'green');
}
}
私は.. ..
import { Directive, ElementRef, Input, Renderer } from '@angular/core';
@Directive({ selector: '[myHighlight]' })
export class HighlightDirective {
constructor(el: ElementRef, renderer: Renderer) {
renderer.setElementStyle(el.nativeElement, 'backgroundColor', 'green');
}
}
に従い、私は変種以下試してみましたように見えますが、私は期待どおりに動作しませんでしたel:ElementRefの構文と通常のオブジェクトインスタンスの作成はnew ElementrRef ..これらの違いとそれらの背後にある論理を説明してください。el:ElementRef関係とそれに相当するものは、通常のものとes6 jsです。
テンプレートファイルをapp.component.tsに含めましたか、app.module宣言にインポートするのを忘れましたか? – Mohanavel
友人、私は..を含んでいます..そして、それはここで問題ではありません。最初のコードサンプルは動作していますが、なぜ2番目と3番目が同じ方法で動作していないのですか...そのコードサンプルの違いは何ですか?コードサンプルを正確に(el:ElementRef、renderer:Renderer)この行は何ですか? – shivaraj