参考Vuejs官网,里面关于v-for指令已经说得很清楚了。
v-for
指令可以绑定数组的数据来渲染一个项目列表:
<div id="app-4">
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
</div>
var app4 = new Vue({
el: '#app-4',
data: {
todos: [
{ text: '学习 JavaScript' },
{ text: '学习 Vue' },
{ text: '整个牛项目' }
]
}
})
在浏览器中的显示效果如下所示:
1.学习 Javascript
2.学习 Vue
3.整个牛项目
在控制台里,输入app4.todos.push({ text: '新项目' })
,你会发现列表最后添加了一个新项目。
完整的Vue示例代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Vue-条件与循环</title>
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<p v-if="seen">{{ message }}</p>
<ol>
<li v-for="todo in todos">
{{ todo.text }}
</li>
</ol>
</div>
<script>
var app = new Vue({
el: '#app',
data: {
seen: true,
message: "现在你看到我了",
todos: [
{ text: '学习 Javascript' },
{ text: '学习 Vue' },
{ text: '整个牛项目' }
]
}
})
</script>
</body>
</html>
在Vuejs中使用v-for指令实现九九乘法表很简单,对应的示例代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>v-for示例-九九乘法表</title>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
<table border="2">
<tr v-for="row in num">
<td v-for="col in row">
{{ col }}*{{ row }}={{ row*col }}
</td>
</tr>
</table>
</div>
<script>
var app = new Vue({
el: '#app',
data: {
num: 9
}
})
</script>
</body>
</html>
在HBuliderX中运行如下图所示: