01-v-model的基本使用
主要是使用他的双向绑定功能
<body>
<div id="app">
<!-- 实现双向绑定,修改input值也会影响message的值 -->
<input type="text" v-model="message" />
<p>{{message}}</p>
</div>
<script src="../js/vue.js"></script>
<script>
const app = new Vue({
el: "#app",
data: {
message: "你好啊,小影",
name: "小影",
},
});
</script>
</body>
02-v-model的其他属性
<body>
<div id="app">
<!-- v-model绑定radio的同一个值时,可以不写name -->
<label for="male">
<input type="radio" id="male" value="男" v-model="sex" />男
</label>
<label for="female">
<input type="radio" id="female" value="女" v-model="sex" />女
</label>
<h2>您选择的性别是: {{sex}}</h2>
<!-- checkbox单选框 -->
<label for="agree">
<input type="checkbox" id=" agree" v-model=" isAgree" />同意协议
</label>
<h2>您选择的是: {{isAgree}}</h2>
<button :disabled="!isAgree">下一步</button>
<!--2.checkbox多远框-->
<input type="checkbox" value="篮球" v-model="hobbies" />篮球
<input type="checkbox" value="足球" v-model="hobbies" />足球
<input type="checkbox" value="乒乓球" v-model="hobbies" />乒乓球
<input type="checkbox" value="羽毛球" v-model="hobbies" />羽毛球
<h2>您的爱好是: {{hobbies}}</h2>
<!--下拉框选择一个-->
<select name="abc" v-model="fruit">
<option value="苹果">苹果</option>
<option value="香蕉">香蕉</option>
<option value="榴莲">榴莲</option>
<option value="葡萄">葡萄</option>
</select>
<h2>您选择的水果是: {{fruit}}</h2>
<!--下拉框选择多个-->
<select name="abc" v-model="fruits" multiple>
<option value="苹果">苹果</option>
<option value="香蕉">香蕉</option>
<option value="榴莲">榴莲</option>
<option value="葡萄">葡萄</option>
</select>
<h2>您选择的水果是: {{fruits}}</h2>
</div>
<script src="../js/vue.js"></script>
<script>
const app = new Vue({
el: "#app",
data: {
message: "你好啊,小影",
name: "小影",
sex: "男",
isAgree: false,
hobbies: [],
fruit: "香蕉",
fruits: [],
},
});
</script>
</body>
03-v-model修饰符
<body>
<div id="app">
<!--1.修饰符: lazy-->
<!-- 默认情况下, v-mode|默认是在input事件中同步输入框的数据的。也就是说,
一旦有数据发生改变对应的data中的数据就会自动发生改变。
lazy修饰符可以让数据在失去焦点或者回车时步会更新 -->
<input type="text" v-model.lazy="message" />
<h2>{{message}}</h2>
<!--2.修饰符: number-->
<!-- 默认情况下,在输入框中无论我们输入的是字母还是数字,都会被当做字符串类型进行处理。
但是如果我们希望处理的是数字类型,那么最好直接将内容当做数字处理。
number修饰符可以让在输入框中输入的内容自动转成数字类型: -->
<input type="number" v-model.number="age" />
<h2>{{age}}-{{typeof age}}</h2>
<!--3.修饰符: trim-->
<!-- 如果输入的内容首尾有很多空格,通常我们希望将其去除
trim修饰符可以过滤内容左右两边的空格 -->
<input type="text" v-model.trim="name" />
<h2>您输入的名字:{{name}}</h2>
</div>
<script src="../js/vue.js"></script>
<script>
const app = new Vue({
el: "#app",
data: {
message: "你好啊,小影",
name: "小影",
age: "",
name: "小影",
},
});
</script>
</body>