【PyQt5】Python使用QWebEngineView时报错Uncaught ReferenceError的解决

问题

在前文Python在PyQt5中使用ECharts绘制图表中的例子,利用QWebEngineView顺利加载雷达图Radar,但后面加载旭日图Sunburst时却出现报错:
js: Uncaught ReferenceError: setData is not defined
查询一下资料后得知是因为网页未加载完全,所以找不到自定义的setData方法。

解决

页面加载完全后再调用。

sunburst_view.load(QUrl("file:///sunburst.html"))
sunburst_view.loadFinished.connect(set_sunburst_data)  # 加上这一句
sunburst_layout.addWidget(sunburst_view)

def set_sunburst_data(self):
    js = "setData({0})".format(self.data)
    self.hero_count_view.page().runJavaScript(js)

解决问题。

你可能感兴趣的:(Python,python,pyqt5,echarts)