【发布时间】:2017-12-18 12:40:00
【问题描述】:
我有一个附加元素的 Angular 1.x 指令。简而言之:
app.directive('mydirective', function() {
template: '<ng-transclude></ng-transclude>',
link: function(el) {
var child = angular.element("<div/>");
el.append(child);
}
我可以像这样将该指令迁移到 Angular 2:
@Directive({
selector: '[mydirective']
})
export class MyDirective implements OnInit {
constructor(private elementRef: ElementRef) { }
ngOnit() {
var child = angular.element("<div/>");
this.elementRef.nativeElement.append(child);
}
}
困扰我的是nativeElement官方文档中的这句话:
当需要直接访问 DOM 时,将此 API 用作最后一个资源。
我的问题是 - 我怎样才能正确地将这个指令迁移到 Angular 2?我唯一的要求是动态构建一个元素并将其附加到带有指令的元素中。
【问题讨论】:
标签: angular angular2-directives