列表渲染v-for
使用v-for
指令基于数组渲染一个列表,v-for
指令的值需要使用item in/of items
形式的特殊语法,其中items
是源数据的数组,而item
是迭代的别名。
代码实例:
<template>
<div><p v-for="item in name" >{{item}}</p></div>
</template>
<script>
export default{
data(){
return{
name:["张三","李四","王五"]
}
}
}
</script>
<style scoped>
</style>
运行结果:
复杂数据
大多数情况,我们渲染的都是来源于网络请求,也就是json格式。
<template>
<div v-for="item in result" >
<h3>姓名:{{item.name}}</h3>
<p>年龄:{{item.age}}</p>
</div>
</template>
<script>
export default{
data(){
return{
result:[{
name:"张三",
age:18
},
{
name:"李四",
age:19
}]
}
}
}
</script>
运行结果:
v-for
也支持使用第二关参数表示当前项的位置索引
<template>
<div><p v-for="(item,index) in name " :key="item" >{{item}}---{{ index }}</p></div>
</template>
<script>
export default{
data(){
return{
name:["张三","李四","王五"]
}
}
}
</script>
运行结果:
v-for 与对象
可以使用v-for遍历一个对象的所有属性
<template>
<div><p v-for="(item,key,index) in user " :key="item" >{{item}}---{{ key }}---{{ index }}</p></div>
</template>
<script>
export default{
data(){
return{
// name:["张三","李四","王五"],
user:{
name:"张三",
age:18
}
}
}
}
</script>
运行结果: