【发布时间】:2018-05-03 05:27:36
【问题描述】:
我正在创建一个带有排序功能的基本表格:
<template>
<!-- more code -->
<tr v-for="item in sortBy(data.body, { name: 'name', order: 1 })">
<td v-for="field in item">{{ field }}</td>
</tr>
<!-- data.body => [{ name: Group 1 }, { name: Group2 }, // etc.] -->
</template>
props: {
data: {
type: Object,
default () {
return {}
}
}
},
methods: {
sortBy (data, params) {
// the warning disappears if I only leave "return data"
data.sort((a, b) => {
return a[params.name] - b[params.name] * params.order
})
return data
}
}
出于某种原因,我收到了以下警告:
[Vue 警告]:组件渲染函数中可能存在无限更新循环。
为什么会这样以及如何解决?
【问题讨论】:
-
好吧,这是一个警告而不是错误:p 试试
return data.slice().sort(......
标签: javascript vue.js vuejs2