Javascript 在vue.js中创建按分散顺序排列的项目对象数据对象

Javascript 在vue.js中创建按分散顺序排列的项目对象数据对象,javascript,vue.js,Javascript,Vue.js,在vue.js中,我的数据对象中有一个按一个顺序排序的项目对象。我想把它按顺序排好。 我的vue模板如下所示- <div class="form-element form-element-checkbox" :key="key" v-for="(value, key) in items"> <input :id="getID(value)" type="checkbox" :value=

在vue.js中,我的数据对象中有一个按一个顺序排序的项目对象。我想把它按顺序排好。 我的vue模板如下所示-

<div class="form-element form-element-checkbox" :key="key" v-for="(value, key) in items">
          <input
            :id="getID(value)"
            type="checkbox"
            :value="value"
            @change="updateFilter"
            v-model="selections"
            :checked="isSelected(value)">
          <label class="chk-small" :for="getID(value)">
            <span :aria-label="`Rated ${key}.0 out of 5`" class="star-rating noBlank" :style="{ width: `${key * 20}px` }"></span>
          </label>
        </div>

按该顺序存储数据无效。已尝试使用items.slice().reverse()。这里可能出了什么问题?我没办法去

如果您不能/不想将
字典更改为数组,只需使用提取其键并处理它们即可

newvue({
el:“#应用程序”,
数据(){
返回{
项目:{
//注意:即使你按降序写,
//JS引擎将按升序列出它们。
5:‘第5项’,
4:‘第4项’,
3:‘第3项’,
},
};
},
});

itemsKeys:{{Object.keys(items)}

  • keyIndex:{{keyIndex}}/项目键:{{key}}/项目值:{{items[key]}}

  • 您是否收到任何错误消息?首先,您不应该使用数字键存储项目,而应该将它们存储为数组。其次,您可以使用
    reduce
    动态排序,或者随时使用方法进行排序。我已经尝试了items.slice().reverse()和computed:{reverseItem(){return this.items.slice().reverse()}@TristanSeifert它抛出的错误是“Typeerror:slice不是函数”
    data() {
          return {
            items: {
              5: 'item_5',
              4: 'item_4',
              3: 'item_3'
            },
            selections: []
          };
        },