• 北风网-Vue.js 学习笔记(3)


    第三章:事件

      第1节视频:事件处理

        一、Vue.js 使用 v-on 指令监听DOM事件来触发 JavaScript 回调函数。

          <input type = "button" v-on:click = "test" value = "按钮"  />

          methods:{

            test:function(){

              alert("HelloWorld");

            }

          }

        二、$event 参数

          1、事件回调函数可以传入 $event 这个事件对象

            <input type = "text" @keydown = "test($event)" />

            methods:{

              test:function($event){

                if($event.keyCode == 13){

                  $event.target.blur();

                }

              }

            }

    第2节视频:事件修饰符_1

      一、事件修饰符

        1、在事件处理程序中调用 event.preventDefault()或event.stopPropagation()是很常见 的。尽管我们可以在事件处理函数中轻松实现这点,但更好的方式是:事件处理函数只有纯粹的数据逻辑,而不是去处理DOM事件细节。

        2、为了解决这个问题,Vue为 v-on 提供了事件修饰符。通过由 “ . ” 来调用修饰符。

          .stop

          .prevent 

             .capture

          .self

             .once

        3、.stop修饰符用来阻止事件冒泡。

          <!-- 阻止单击事件冒泡 -->

                        <div @click = "test_1">

            <input type = "button" value = "测试" @click.stop = "test_2">

          </div>

        4、.prevent 修饰符取消事件的默认动作。

          <form v-on:submit.prevent = "onSubmit" method = "post" action = ".......">

            <input type = "submit" value =“提交”>

          </form>

    第3节视频:事件修饰符_2

        1、.capture 修饰符捕获冒泡事件

          <div @click.capture = “test_1”>

            <input type = "button" value = "测试" @click = "test_2" >

          </div>

        2、.self 只在当前控件触发事件

          <div @click.self = "test_1">

            <input type = "button" value = "测试" @click = "test_2">

          </div>

        3、 .once 事件只会执行一次

          <div @click = "test_1">

            <input type = "button" value = "测试" @click.once = "test_2" >

          </div>

    第4节视频:表单处理

      一、表单控件绑定:

        1、可以用 v-model 指令在表单控件上创建双向数据绑定

         <input type = "text" v-model = "username" />

        

        2、v-model 会忽略所有表单元素的 value 、checked、selected 特性的初始值,因为它会以模型层的数据作为初始值。

        data:{

          username:"Scott"

        }

        

        3、v-model 指令可以用来绑定复选框

          <input type = "ckeckbox" v-model = "sport" value = "足球" />足球

          <input type = "ckeckbox" v-model = "sport" value = "篮球" />篮球

          <input type = "ckeckbox" v-model = "sport" value = "羽毛球" />羽毛球

          <input type = "ckeckbox" v-model = "sport" value = "游泳" />游泳  

          <p>{{sport}}</p>

          data:{

            sport:[]

          }

        

        4、v-model 指令可以用来绑定单选按钮

          <input type = "radio" v-model = "sex" value = "男">男

          <input type = "radio" v-model = "sex" value = "女">女

          <input type = "radio" v-model = "sex" value = "保密">保密

          <p>{{sex}}</p>

          

          data:{

            sex:"保密"

          }

        5、v-model 指令可以用来绑定下拉列表

          <select v-model = "nation">

            <option value = "汉族">汉族</option>

            <option value = "藏族">藏族</option>

            <option value = "蒙古族">蒙古族</option>

            <option value = "回族">回族</option>

            <option value = "朝鲜族">朝鲜族</option>

          </select>

          <p>{{nation}}</p>

        

      二、lazy修饰符

        1、v-model 在 input 事件中同步输入框的数据,但可以添加一个 lazy 修饰符,从而转变为在 change 事件中同步

        <input type = "text" v-model.lazy = "username" />

        <p>{{username}}</p>

        

      三、number 修饰符

        1、如果想自动将用户的输入值转为 Number 类型,可以添加一个 number 修饰符

        <input type = "text" v-model.number =  "salary" />

        <p>{{salary}}</p>

      四、trim 修饰符

        1、如果要自动过滤用户输入的首尾空格,可以添加 trim 修饰符到 v-model 上过滤输入

        <input type = "text" v-model.trim = "address" />

        <p>{{address}}</p>

  • 相关阅读:
    TimesTen ODBC 链接库差异及相关命令行工具的使用注意事项
    Makefile当中宏定义传递字符串
    WTL 中的常见问题汇总
    WTL 中CComboBoxEx显示不了的问题
    error C2664 转换错误汇总[转]
    LNK1123: 转换到 COFF 期间失败: 文件无效或损坏[汇总]
    python 安装mysql 客户端遇到的问题
    统计查询基本信息
    使用Log4net记录日志(非常重要)
    EntityFramework中使用sql语句
  • 原文地址:https://www.cnblogs.com/chengshun/p/7782217.html
Copyright © 2020-2023  润新知