因为在 setInterval 函数中调用的 setoption 函数中的 res.data 是固定的,没有更新到最新的数据。应该将 res.data 存储在外层作用域中,然后在 setoption 函数中使用最新的数据。例如可以将 res.data 存储在某个变量中,然后在 setoption 函数中使用该变量的值。修改后的代码如下:

axios.get("api/home/click_count").then((res) => { let data = res.data; // 存储数据 // console.log(res)

/** @type EchartsOption **/
let option = {
    // 省略部分代码
}

Echat.setOption(option)

// 动态获取数据
function setoption() {
    console.log(data) // 使用存储的数据
    Echat.setOption({
        series: [
            {
                data: [
                    { value: data[1].count, name: '已点击' },
                    { value: data[0].count, name: '未点击' },
                ]
            }
        ]

    })
}
setInterval(() => {
    axios.get("api/home/click_count").then((res) => {
        data = res.data; // 更新数据
        setoption()
    })
}, 2000)

})


原文地址: https://www.cveoy.top/t/topic/JNL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录