performance - 在大数据集上使用v-model时如何让vuejs响应更快

标签 performance vuejs2 vue.js

我正在处理的应用程序呈现了一组人和他们的 child 。阵列中大约有600人。我在文本输入中显示人名和每个人的 child 的名字,以便可以对其进行编辑。我使用 V-model 进行双向绑定(bind),这样我就可以轻松保存编辑内容。

<tr v-for="person in persons">
  <td>
    <input type="text" v-model="person.name" />
  </td>
  <td v-for="child in person.children">
    <input type="text" v-model="child.name" />
  </td>
</tr>

问题是当我开始在文本框中输入时,有一个延迟,我必须等待几秒钟才能显示我输入的内容。

当我使用 v-bind:value 或当我将来自 api 的人数减少到 50 人时,这不会发生。我可以使用分页,但我的老板希望一次看到所有结果显示。

我的问题是,如何使 vue.js 在对大数据使用双向绑定(bind)时执行得更快?

最佳答案

当你处理大量数据时,集成分页总是一个好主意,但有时这不是一个选择。

.lazy 修饰符存在于 v-model 指令中。它的作用是在更改事件后将输入与数据模型同步。

用法非常简单:

<input v-model.lazy="msg" >

文档:https://v2.vuejs.org/v2/guide/forms.html#lazy

关于performance - 在大数据集上使用v-model时如何让vuejs响应更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42427845/

相关文章:

SQL - 提高 NOT EXISTS 查询性能

vue.js - 为什么vue组件数据一定要是函数?

vue.js - jsconfig.json 给出 ts 错误

vue.js - 带有 No-SSR 的 Vue2-Leaflet 导致 Window is not Defined 错误

mysql - 使用正确数据类型的性能优势

python - + 与 f-string 的字符串连接

php - 不同 PHP mcrypt 算法的速度

javascript - 获取 v-model 值并使用 v-for 创建循环

jquery - v-model 不会检测 jQuery 触发事件所做的更改

javascript - 如何修复 Vuex 中未知突变类型的错误?