首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apexchart不能使用axios动态更新

Apexchart不能使用axios动态更新
EN

Stack Overflow用户
提问于 2020-04-28 14:59:16
回答 1查看 2K关注 0票数 0

updateSeries函数似乎不起作用。我不明白为什么它不是这样。确实会调用uChart()函数。我有以下代码:

代码语言:javascript
复制
<template>
<div>
    <Menu></Menu>
    <h1> Our Home Website! </h1>

    <apexchart ref="chart1" width="500" type="line" :options="options" :series="series"></apexchart>
</div>

代码语言:javascript
复制
 import Menu from './Menu'     import axios from 'axios'
代码语言:javascript
复制
export default {
    name: 'Home',
    components: {
        'Menu': Menu
    },
    data: function () {
        return {
            options: {
                chart: {
                    height: 350,
                    type: 'bar',
                    id: 'chart'
                },
                dataLabels: {
                    enabled: false
                },
                series: [],
                title: {
                    text: 'Ajax Example',
                },
                noData: {
                    text: 'Loading...'
                }
            }
        }
    },
    mounted: function () {
        this.uChart()
    },
    methods: {
        uChart: function() {
            axios
                .get('http://my-json-server.typicode.com/apexcharts/apexcharts.js/yearly')
                .then(function (response) {
                    this.$refs.chart1.updateSeries([{
                        name: 'Sales',
                        data: response.data
                    }])
                });
            console.log(this.$refs.chart1);
        }
    }

对图表的引用和JSON数据的链接一样有效。但图表仍处于“正在加载”状态。:This is how it actually looks like on the website and the errors that I get

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-30 16:22:21

正如埃斯特斯·弗拉斯克在他的评论中提到的那样。这个问题的答案是对"then“参数使用箭头语法,因为它是一个回调。因此,正确的函数如下所示:

代码语言:javascript
复制
    methods: {
    uChart: function() {
        axios
            .get('http://my-json-server.typicode.com/apexcharts/apexcharts.js/yearly')
            .then(response => {
                this.$refs.chart1.updateSeries([{
                    name: 'Sales',
                    data: response.data
                }])
            });
        console.log(this.$refs.chart1);
    }
}

有关此主题的更多详细信息,请查看此问题的答案:How to access the correct this inside a callback?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61474411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档