javascript - 如何在 vue.js 组件中加速渲染图表
问题描述
我有一个 Vue 组件,它在用户单击图像时呈现另一个组件。它的行为就像这个小提琴,除了当卡片翻转时用户看到的不是#2,而是一个图表。
代码看起来像这样。
<div class="card" v-on:click="flipCard()" v-bind:class="{ flipped: isFlipped }">
<div class="front">
<img src="something.jpg">
</div>
<div class="back">
<BarChartTile :sourceData="chartData" :options="chartOptions"></BarChartTile>
</div>
</div>
我遇到的问题是,当用户第一次点击卡片时,图表需要很长时间才能呈现。在用户点击卡片之前,Vue.js 不会将图表的源数据推送到 Chart.js,但现在用户需要足够的时间来注意到事情进展缓慢。
一旦图形组件渲染一次,一切都很好。用户可以一遍又一遍地点击卡片,图表将流畅地出现/消失,没有延迟。
有没有办法告诉 Vue.js 完成渲染子组件的工作,但在用户单击卡片之前不显示它?或者,是否有这种翻转卡片行为的替代实现可以避免我遇到的问题?
解决方案
推荐阅读
- node.js - 如何在同一个模板中创建带有通知和 sns 主题的状态机?
- if-statement - 使用行号在 Arrayformula 中连接
- python - 为什么 pyautogui 中的所有内容都正好 1.5 倍?
- django - graphene-django:查询所有模型字段而不是请求的字段
- javascript - 如何使用异步等待在 React 组件的渲染中运行异步函数?
- java - LinkedBlockingQueue,我服用后项目不断重复
- facebook-marketing-api - 有故障的洞察力的覆盖面价值是错误的吗?
- winapi - 无法在右上角禁用 x 按钮的情况下关闭窗口
- c# - 必须指定收件人。当我想使用 ASP.NET 发送电子邮件时遇到此错误
- angular - p-calendar maxDate 和 maxDate 值不会实时更新