【发布时间】:2017-11-22 02:48:21
【问题描述】:
有谁知道我如何在 Angular 2 中测试这个属性指令?我正在寻找一些例子,但我还没有找到。如果有人有示例向我展示或向我展示如何做到这一点,那将对我有所帮助。
import { Directive, SimpleChanges, Input, OnChanges, ElementRef, Renderer} from '@angular/core';
@Directive({
selector: '[highlightData]'
})
export class HighlightDataDirective implements OnChanges {
private _highlightData: string;
@Input() set highlightData(value: string) {
const prev = this._highlightData;
this._highlightData = value;
const cur = value;
}
constructor(private _elementRef: ElementRef, private _render: Renderer) {
}
ngOnChanges(changes: SimpleChanges) {
if (changes['highlightData'] && !changes['highlightData'].isFirstChange()) {
const prev: string = changes['highlightData'].previousValue;
const cur: string = changes['highlightData'].currentValue;
if (cur !== prev) {
this._render.setElementClass(this._elementRef.nativeElement, 'animate', true);
setTimeout(() => {
this._render.setElementClass(this._elementRef.nativeElement, 'animate', false);
}, 3000);
}
}
}
}
谢谢。
【问题讨论】:
标签: angular unit-testing angularjs-directive jasmine