如何选择阴影根元素

时间:2018-04-26 13:56:11

标签: polymer web-component shadow-dom

使用聚合物,我在按标签名称选择元素时遇到问题。

<canvas id="chart" width="150" height="150"></canvas>

.

..

...

_drawChart(price, time) { var ctx = this.$.canvas.getContext('2d'); //error happened here

.

..

...

}

现在this.$.canvas.getContext('2d');在控制台中返回错误Uncaught TypeError: Cannot read property 'canvas' of undefined.

我通过getElementById从控制台手动选择元素,它返回null,注意画布位于阴影根树中。

2 个答案:

答案 0 :(得分:1)

尝试this.$.chart.getContext('2d');而不是this.$.canvas.getContext('2d');

答案 1 :(得分:0)

this.shadowRoot.getElementById("chart").getContext('2d');也有效 有点长,但更本土。