1.表单的使用
对于单选框来说,选中的时候,会把自己的value值赋值给变量
对于下拉菜单来说,option中间的内容是给用户看的,我们是通过value获取我们需要的值给变量
对于多选框来说,如果初始值是数组,则会把数据之间放到数组中,如果非数组类型,则会以布尔值展示结果
<body> <div id="app"> 姓名<input type="text" v-model='name'><br> 性别<input type="radio" value="男" v-model='sex'>男<input type="radio" value="女" v-model='sex'>女<br> 电话<input type="text" v-model='tel'><br> 密码<input type="text" v-model='pwd'><br> 确认密码<input type="text" v-model='pass'><br> 专业 <select v-model='job'> <option value="web工程师" selected>web工程师</option> <option value="Java工程师">Java工程师</option> <option value="c++">c++</option> </select> <br> 爱好 <input type="checkbox" value="唱" v-model='hobby'>唱 <input type="checkbox" value="跳" v-model='hobby'>跳 <input type="checkbox" value="rap" v-model='hobby'>rap <input type="checkbox" value="篮球" v-model='hobby'>篮球 <br> 证书 <select v-model='zs' multiple> <option value="计算机二级证书">计算机二级证书</option> <option value="英语四级">英语四级</option> <option value="英语六级">英语六级</option> <option value="普通话二级">普通话二级</option> </select> <br> 备注 <textarea cols="30" rows="10" v-model='text'></textarea><br> <input type="checkbox" value="同意" v-model='yes'>我同意 {{yes}} <br> <input type="submit" value="提交" @click='sub' :disabled=!yes> </div> <script src="../vue.js"></script> <script> new Vue({ el: '#app', data: { name: 'zs', sex: '女', tel: '111', pwd: '123', pass: '', job: 'web工程师', hobby: ['唱', '篮球'], zs: '', text: '哈哈哈', yes: true, }, methods: { sub() { if (this.pass !=this.pwd) { alert('密码不对') return } console.log('发请求'); } } }) </script> </body>
网页效果
2.v-for中key的使用
1.:key的取值必须是number类型或者是string类型,不能是对象
2.v-for循环中的唯一值,只要使用循环就必须添加
3.vue中的修饰符
1.事件修饰符
.stop .prevent .self .once .capture(给谁加谁先出来)
2.键盘修饰符
<input type="text" @keydown.up = 'up' placeholder="向上">
<input type="text" @keydown.down = 'down' placeholder="向下">
<input type="text" @keydown.left = 'left' placeholder="向左">
<input type="text" @keydown.right = 'right' placeholder="向右">
<input type="text" @keydown.enter = 'enter' placeholder="回车">
3.鼠标修饰符
<input type="text" @click.left = 'left' placeholder="左键">
<input type="text" @click.middle = 'middle' placeholder="滚轮">
<input type="text" @click.right = 'right' placeholder="右键">
4.表单修饰符
<!-- .lazy 只有光标离开输入框,才会动态更新数据 -->
<input type="text" v-model.lazy='str'>{{str}}
<!-- .number 只要第一个值是数字类型,结果就是数字类型,不管第一个值后面是什么类型. 如果第一个值不是数字,那么就没有效果-->
<input type="text" v-model.number='num' placeholder="请输入数字">
<br>
<!-- .trim 去除收尾空格 需要是用户输入的默认值-->
<input type="text" v-model.trim='content'>
4.生命周期
beforeCreate() 创建之前 什么都是undefined
created() 创建完成, vue实例化初始化完成,但是el还是undefined
beforeMount() 挂载之前 已经找到挂载点,但是数据还未渲染 此时的el是div元素
mounted() /挂载完成 数据加载完成
beforeUpdate() 更新之前 和更新之后的数据都是最新数据
更新完成 updated() {
销毁之前 beforeDestroy() {
销毁完成 destroyed() {