vue怎样截取展示数组数据?

<div v-for="(item, index) in cMList" :key=index>
  ……
  ……
  <div v-for="(items, indexs) in item.list" :key=indexs>
    {{items.content}}  //我想只显示前三条数据 
  </div>
</div

上面这样可以输出所有的的数据 但是现在我只想让它输出前三条数据 我改成这样了
v-for="(items, indexs) in item.list.slice(0, 2)"
但是报错了 TypeError: Cannot read property 'slice' of undefined"
这是为什么?

cMList: [
  {
    uid: 10001,
    list: [
        {nickname: 'aaa', content: '666', time: '2019.2.12'},
        {nickname: 'aaa', content: '666', time: '2019.2.12'},
        {nickname: 'aaa', content: '666', time: '2019.2.12'},
        {nickname: 'aaa', content: '666', time: '2019.2.12'},
        {nickname: 'aaa', content: '666', time: '2019.2.12'},
        {nickname: 'aaa', content: '666', time: '2019.2.12'},
        {nickname: 'aaa', content: '666', time: '2019.2.12'}
    ]
  }
]

回答:

是你写错了。。。

<div v-for="(item, index) in cMList" :key="index">
    <div v-if="item.list" v-for="(items, indexs) in item.list.splice(0, 3)" :key="indexs">
        {{items.content}}
    </div>
</div>

回答:

https://blog.csdn.net/VegasLe… 看一下这个吧 不行就用 v-if 控制一下

回答:

还是不建议在模板里面写处理逻辑,拿到数据后,处理成三条,再输出就好了,这样逻辑更加清晰。

暂无评论

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注