Div angular 2 中的 justGage 无法识别 ID
Div id not recognised for justGage in angular 2
我正在 angular 2.
中使用 JustGage 创建一个仪表组件
以下是我的组件,
@Component({
selector: 'my-gauge',
template: '<div id={{gaugeId}} style="width:200px; height:150px;" ></div>'
})
export class GaugeComponet implements OnInit {
@Input()
gaugeId: String;
ngOnInit() {
console.log("inside on init with id : " + this.gaugeId);
var g = new JustGage({
id: this.gaugeId,
value: 45,
min: 0,
max: 100,
title: "Title"
});
}
}
及其在应用组件中的用法,
@Component({
selector: 'my-app',
template: '<h1>Gauge Demo</h1> <my-gauge gaugeId="testId"></my-gauge>',
directives :[GaugeComponet]
})
export class AppComponent { }
当我运行这段代码时,我在浏览器控制台中得到以下输出,
inside on init with id : testId GaugeComponent.js (line 16)
* justgage: No element with id : testId found
当我在仪表组件中硬编码 id 时,我能够在我的页面上看到仪表。
我做错了什么?
您没有将 testId
作为字符串传递。
试试这个:
<my-gauge gaugeId="'testId'"></my-gauge>
或者您需要在 AppComponent
中包含 testId
变量:
@Component({
selector: 'my-app',
template: '<h1>Gauge Demo</h1> <my-gauge gaugeId="testId"></my-gauge>',
directives :[GaugeComponet]
})
export class AppComponent {
testId = 'testId';
}
更新
您还需要使用 ngAfterViewInit
钩子而不是 ngOnInit
来初始化 JustGage
我正在 angular 2.
中使用 JustGage 创建一个仪表组件以下是我的组件,
@Component({
selector: 'my-gauge',
template: '<div id={{gaugeId}} style="width:200px; height:150px;" ></div>'
})
export class GaugeComponet implements OnInit {
@Input()
gaugeId: String;
ngOnInit() {
console.log("inside on init with id : " + this.gaugeId);
var g = new JustGage({
id: this.gaugeId,
value: 45,
min: 0,
max: 100,
title: "Title"
});
}
}
及其在应用组件中的用法,
@Component({
selector: 'my-app',
template: '<h1>Gauge Demo</h1> <my-gauge gaugeId="testId"></my-gauge>',
directives :[GaugeComponet]
})
export class AppComponent { }
当我运行这段代码时,我在浏览器控制台中得到以下输出,
inside on init with id : testId GaugeComponent.js (line 16)
* justgage: No element with id : testId found
当我在仪表组件中硬编码 id 时,我能够在我的页面上看到仪表。
我做错了什么?
您没有将 testId
作为字符串传递。
试试这个:
<my-gauge gaugeId="'testId'"></my-gauge>
或者您需要在 AppComponent
中包含 testId
变量:
@Component({
selector: 'my-app',
template: '<h1>Gauge Demo</h1> <my-gauge gaugeId="testId"></my-gauge>',
directives :[GaugeComponet]
})
export class AppComponent {
testId = 'testId';
}
更新
您还需要使用 ngAfterViewInit
钩子而不是 ngOnInit
来初始化 JustGage