highcharts - 在 Vue 中使用 HTML 或如何使其适应 Vue.js
问题描述
因此,我在最初构建的 Web 应用程序中使用了 highcharts vue.js 包装器,它完全是在 laravel/blades 中构建的,但情况发生了变化,现在我正在使用 vue。所以我试图在图表上制作图例项按钮并使它们可点击,以便在点击它们时我可以将它们的样式更改为透明。
legend: {
width: 250,
layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
itemMarginTop: -5,
itemMarginBottom: -10,
squareSymbol: true,
symbolHeight: 20,
symbolWidth: 0,
symbolRadius: 0,
useHTML: true,
labelFormatter: function () {
return '<label class="checkbox legend-items">' +
'<strong class="btn legend-btn" style="width: 220px; background-color: '+this.color+'" onclick=changebackground(this)>'+ this.name + '</span></strong>'+
'</label>';
}
}
那是我的 highcharts 的图例代码。现在,当我单击按钮时,它会显示:Uncaught ReferenceError: changebackground is not defined at HTMLElement.onclick
在控制台中。现在我确实changebackground
在我的 vue 方法中声明了函数。我也尝试在脚本标记的开头声明它,但无济于事。关于如何使这项工作的任何建议?这是我在vue中的方法
methods: {
changebackground(event) {
console.log('this is amazing if it works');
}
}
希望社区能够帮助我。
解决方案
尝试改变
onclick
至
@click
并删除“this”作为参数。Vue 中的“this”是所有组件,而不仅仅是一个 HTMLElement。
推荐阅读
- cplex - CPLEX:运行 OPL 时错误太多
- python - 为什么我的代码中的默认字典不断扩展?
- android - 找不到具有与包名称不同的 applicationIds 风味的资源
- class - 带有 Jest 的单元测试,类构造函数
- c++ - 在嵌套无序映射中插入或更新键
- java - 如何识别 Java VisualVM 中线程之间的阻塞
- oracle - 无法使用对象类型的列创建表(并且相同的对象类型包含嵌套表类型的属性)
- javascript - 数据表动态更新总计
- sql - 用另一个表中的某些列创建一个表
- encryption - 在 C# 中使用 Google KMS API 加密的值长度与在 postman 中直接从 API 生成的加密文本的长度不同