项目中封装了echart组件,想重复使用echart图表。项目开始使用id进行echart图表初始化,发现多次调用同一个组件出现id重复,导致组件只能使用一次得问题。
解决方法:
将id改为ref即可。
示例:
原始组件代码:
- <div
- id="lineChart"
- class="chartContainer"
- />
- <script>
- export default {
- name: 'LineChart',
- components: {
- },
- data() {
- return {
- };
- },
- methods: {
-
- initChart(data) {
- const myChart = this.$echarts.init(document.getElementById('lineChart'));
- },
- };
- script>
修改后代码:
- <div
- ref="lineChart"
- class="chartContainer"
- />
- <script>
- export default {
- name: 'LineChart',
- components: {
- },
- data() {
- return {
- };
- },
- methods: {
-
- initChart(data) {
- const myChart = this.$echarts.init(this.$refs.lineChart);
- },
- };
- script>
使用ref即可复用组件。
记录一下。