我正在动态添加画布,我必须在画布上绘制一些东西。 如何访问画布
<canvas id=\"myCanvas\" class='myCanvas' #myCanvas width=\"100\" height=\"100\">
我在所需的div
上使用innerHTML动态添加它 @Component({
selector: 'my-view',
template: `
<div [innerHTML]="{{str}}"></div>
`
})
export class countryOverviewComponent implements ngOnInit(
private str="";
ngOnInit() {
this.str="<canvas id=\"myCanvas\" class='myCanvas' #myCanvas width=\"100\" height=\"100\">";
this.getCanvas();
}
getCanvas(){
//I have to get the canvas here.
}
)
答案 0 :(得分:1)
使用[innerHTML]
添加Angular2特定语法时,Angular2只是按原样传递字符串,并且不以任何方式处理它。
如果要动态添加它,请将其包装在组件中并使用ViewContainerRef.createComponent()
动态添加组件。
有关示例,请参阅Angular 2 dynamic tabs with user-click chosen components