【发布时间】:2018-06-03 11:48:16
【问题描述】:
我有一个 v-for,它将通过 JSON 响应中的消息并将它们打印到屏幕上。消息按时间顺序来自服务器,但是当我通过 Vue chrome 插件查看数据时,数据会按字母顺序重新排序。
我有一个简单的例子。
这是通过 Postman 请求的 JSON:
{
"e": "e",
"d": "d",
"c": "c",
"b": "b",
"a": "a"
}
当我通过 Vue 进行调用并使用 v-for 进行渲染时,结果相同:
data:Object
a:"a"
b:"b"
c:"c"
d:"d"
e:"e"
所以问题是,我可以阻止 Vue 重新排序我的数据吗?如果没有,我应该如何正确地重新订购?
【问题讨论】:
-
不能保证对象中键的顺序,它由迭代方法决定或根本不决定。如果排序顺序很重要,通常最好不要使用对象。
-
JSON 对象没有特定的顺序,也不能保证保持您放入的顺序。我建议改为传递数组而不是对象,然后根据需要进行转换。
标签: javascript json vue.js vuejs2