如何在Angular 2中封装动态添加的元素?

时间:2015-10-28 08:29:22

标签: angular material-design-lite

尝试使MDL与Angular2一起使用。

使用shadow DOM模拟角度封装了从代码中获得的所有css和html。但是当我使用componentHandler.upgradeElement()时,它会创建没有封装的新元素。

我该怎样做才能将其封装?

1 个答案:

答案 0 :(得分:1)

添加这个简单的指令mdl元素!

import {Component, ElementRef } from 'angular2/core';
declare var componentHandler: any;


@Component({
    selector: '[mdl]',
    template: `<ng-content></ng-content>`
})



    export class MdlComponent {

    constructor(public el: ElementRef) {

        MdlComponent.mdlWrapper(el);

    }

    static mdlWrapper(element: ElementRef) {

        componentHandler.upgradeElement(element.nativeElement);
    }
}