首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更新vue2-frappe图表?

如何更新vue2-frappe图表?
EN

Stack Overflow用户
提问于 2019-05-31 06:51:16
回答 1查看 450关注 0票数 2

在过去的几个小时里,我一直在为这件事绞尽脑汁,不管我往哪里看,我似乎都找不到答案。

我使用vue2-frappe作为我的图表库。我使用一个简单的条形图来显示某一天的值。一切都很好,直到我的上级决定他们想要在这张图表上显示一整年的价值,这意味着我必须给它加上一些分页。

问题是,现在我不知道如何使图表改进机。我试图替换绑定图表的整个对象,以及操作特定的值,但是似乎没有什么能使组件重定向。

在frappe.js的文档中,您可以通过具体方法修改数据,但这是Vue,我不能像在普通.js中那样只调用chart.update()。如果我通过vue dev工具检查组件,我可以看到它包含修改过的数据,它只是不重新绘制自己。

有人知道该怎么做吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-31 07:15:08

我会尝试强制更新视图组件。

VueJ的反应性有时会使您认为它应该对更改作出反应而不是这样做时感到困惑。

您可以强制视图更新如下:

代码语言:javascript
复制
// Globally
import Vue from 'vue';
Vue.forceUpdate();

// Using the component instance
export default {
    methods: {
        methodThatForcesUpdate() {
        // ...
        this.$forceUpdate();  // Notice we have to use a $ here
        // ...
    }
  }
}

您可以在这里阅读有关重新呈现的正确方法:https://michaelnthiessen.com/force-re-render

如vueJs的docs:https://v2.vuejs.org/v2/guide/list.html#Caveats中所概述的,这种方法有一些注意事项。

Note #

强制重呈现不会更新计算值,但是您的计算属性不应该包含任何外部的非反应性变量。

注释2,,上面由Michael撰写的文章,也指出了在他看来最好的方法是关键的改变,我认为我们都应该意识到这一点。

我希望这能让你走上正轨。听起来像是(使用有限的信息)您可以替换数据,但使用相同的键。

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

https://stackoverflow.com/questions/56390079

复制
相关文章

相似问题

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