美文网首页VUE
vue 修饰符

vue 修饰符

作者: 简单tao的简单 | 来源:发表于2019-08-08 20:46 被阅读0次
    v-model 修饰符

    .lazy
    .number
    .trim

    <!-- 在“change”时而非“input”时更新 -->
    <input v-model.lazy="msg" >
    
    <!-- 自动将用户的输入值转为数值类型 -->
    <input v-model.number="age" type="number">
    
    <!-- 自动过滤用户输入的首尾空白字符 -->
    <input v-model.trim="msg">
    
    .sync 修饰符
    //子组件
    this.$emit('update:title', newTitle)
    //父组件
    <text-document
      v-bind:title="doc.title"
      v-on:update:title="doc.title = $event"
    ></text-document>
    
    //.sync是update:写法的语法糖
    
    //子组件
    this.$emit('update:title', newTitle)
    //父组件
    <text-document v-bind:title.sync="doc.title"></text-document>
    
    .native修饰符
    <!-- 在一个组件的根元素上直接监听一个原生事件 -->
    <base-input v-on:focus.native="onFocus"></base-input>
    
    事件修饰符

    .stop
    .prevent
    .capture
    .self
    .once
    .passive

    <!-- 阻止单击事件继续传播 -->
    <a v-on:click.stop="doThis"></a>
    
    <!-- 提交事件不再重载页面 -->
    <form v-on:submit.prevent="onSubmit"></form>
    
    <!-- 修饰符可以串联 -->
    <a v-on:click.stop.prevent="doThat"></a>
    
    <!-- 只有修饰符 -->
    <form v-on:submit.prevent></form>
    
    <!-- 添加事件监听器时使用事件捕获模式 -->
    <!-- 即元素自身触发的事件先在此处理,然后才交由内部元素进行处理 -->
    <div v-on:click.capture="doThis">...</div>
    
    <!-- 只当在 event.target 是当前元素自身时触发处理函数 -->
    <!-- 即事件不是从内部元素触发的 -->
    <div v-on:click.self="doThat">...</div>
    
    <!-- 点击事件将只会触发一次 -->
    <a v-on:click.once="doThis"></a>
    
    <!-- 滚动事件的默认行为 (即滚动行为) 将会立即触发 -->
    <!-- 而不会等待 `onScroll` 完成  -->
    <!-- 这其中包含 `event.preventDefault()` 的情况 -->
    <div v-on:scroll.passive="onScroll">...</div>
    

    使用修饰符时,顺序很重要;相应的代码会以同样的顺序产生。因此,用 v-on:click.prevent.self会阻止所有的点击,而 v-on:click.self.prevent 只会阻止对元素自身的点击。

    按键修饰符

    .enter
    .tab
    .delete (捕获“删除”和“退格”键)
    .esc
    .space
    .up
    .down
    .left
    .right

    <!-- 只有在 `key` 是 `Enter` 时调用 `vm.submit()` -->
    <input v-on:keyup.enter="submit">
    
    <input v-on:keyup.page-down="onPageDown">
    

    你可以直接将 KeyboardEvent.key 暴露的任意有效按键名转换为 kebab-case 来作为修饰符。

    系统修饰符

    .ctrl
    .alt
    .shift
    .meta

    <!-- Alt + C -->
    <input @keyup.alt.67="clear">
    
    <!-- Ctrl + Click -->
    <div @click.ctrl="doSomething">Do something</div>
    
    .exact 修饰符
    <!-- 即使 Alt 或 Shift 被一同按下时也会触发 -->
    <button @click.ctrl="onClick">A</button>
    
    <!-- 有且只有 Ctrl 被按下的时候才触发 -->
    <button @click.ctrl.exact="onCtrlClick">A</button>
    
    <!-- 没有任何系统修饰符被按下的时候才触发 -->
    <button @click.exact="onClick">A</button>
    

    .exact 修饰符允许你控制由精确的系统修饰符组合触发的事件。

    鼠标按钮修饰符

    .left
    .right
    .middle

    这些修饰符会限制处理函数仅响应特定的鼠标按钮。

    相关文章

      网友评论

        本文标题:vue 修饰符

        本文链接:https://www.haomeiwen.com/subject/covfjctx.html