VUE学习记录(TodoList v-model、v-for、v-on)
作者:互联网
通过input框向任务列表增加任务
创建新页面
引入vue.js
<script src="./vue.js"></script>
.html文件 前端大体框架
<div id="app">
<input type="text"/>
<button>提交</button>
<ul>
<li>第一个任务</li>
<li>第二个任务</li>
</ul>
</div>
.js文件
输入框内的内容 循环输出列表任务
<script>
var app = new Vue({
el:'#app',
data:{
list:['第一个任务','第二个任务']
}
})
</script>
v-for
循环data里面的数组数据,名称自定义,在html里面使用
<li v-for="item in list">第一个任务</li>//循环list里的数组数据大小
<li v-for="item in list">{{item}}</li>//用{{}}引用list里的数据
v-on
提交按钮使用< button >
<button v-on:click="handleBtnClick">提交</button>
.js需要用到methods方法
methods:{
handleBtnClick:function(){//定义方法
}
}
v-model
点击button拿到input的内容,提取内容
<input type="text" v-model="inputValue"/>//提取inout里面的内容
接收提取input框中的内容
再将inputValue的内容传输到list中
var app = new Vue({
el:'#app',
data:{
list:[],
inputValue:''
},
methods:{
handleBtnClick:function(){
this.list.push(this.inputValue)//将input的内容增加到list中
}
}
})
附加功能 提交时同时清空输入框
methods:{
handleBtnClick:function(){
this.list.push(this.inputValue)//将input的内容增加到list中
this.inputValue = ''//使数据为空
}
}
全部代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<script src="./vue.js"></script>
</head>
<body>
<div id="app">
<!-- 提取input里面的内容 -->
<input type="text" v-model="inputValue"/>
<button v-on:click="handleBtnClick">提交</button>
<ul>
<li v-for="item in list">{{item}}</li>
<!-- 循环list里的数据 -->
</ul>
</div>
</body>
<script>
var app = new Vue({
el:'#app',
data:{
list:[],
inputValue:''
},
methods:{
handleBtnClick:function(){
this.list.push(this.inputValue)//将input的内容增加到list中
this.inputValue = ''//使数据为空
}
}
})
</script>
</html>
功能实现效果图
总结
v-for 循环输出data中的数组
v-on 绑定事件
v-model 双向绑定(同时控制输入输出)
MVVM模式,对数据进行操作
标签:VUE,methods,TodoList,app,list,inputValue,input,model,data 来源: https://blog.csdn.net/wNverlandw/article/details/122399427