美文网首页
Vue 指令、修饰符

Vue 指令、修饰符

作者: fanison | 来源:发表于2020-05-19 22:14 被阅读0次

指令 Directive

<div v-text="x"></div>
<div v-html="x"></div>

以 v- 开头的东西就是指令

  • 语法

v-指令名:参数 = 值 , 如 v-on: click=add

如果值里没有特殊字符,则可以不加引号;
有些指令没有参数和值, 如 v-pre
有些指令没有值,如v-on:click.prevent

修饰符

@click.stop = "add" 表示阻止事件传播/冒泡
@click.prevent = "add" 表示阻止默认动作
@click.stop.prevent = "add" 同时表示两种意思

v-on支持的修饰符:

.stop .prevent
.{keycode | keyAlias}  .capture .self .once .passive .native
快捷键相关 .ctrl .alt .shift .meta .exact
鼠标相关 .left .right .middle

v-bind 支持的修饰符:

.sync .prop .camel 

v-model 支持的修饰符:

.lazy .number .trim

.sync 修饰符

组件不能修改 props 外部数据
emit 可以触发事件,并传参event 可以获取$emit的参数

.sync功能:当一个子组件改变了一个 prop 的值时,这个变化也会同步到父组件中;使用update:myPropName 模式触发事件,实现双向绑定

代码示例

//父组件代码
<template>
  <div class="app">
    App.vue 我现在有 {{total}}
    <hr>
    <Child :money="total" v-on:update:money="total = $event"/>
  </div>
</template>

<script>
import Child from "./Child.vue";
export default {
  data() {
    return { total: 10000 };
  },
  components: { Child: Child }
};
</script>

<style>
</style>
//子组件代码
<template>
  <div class="child">
    {{money}}
    <button @click="$emit('update:money', money-100)">
      <span>花钱</span>
    </button>
  </div>
</template>

<script>
export default {
  props: ["money"]
};
</script>

<style>
</style>

在一个包含money prop 的假设的组件中,通过以下方式赋予新值:

$emit('update:money', money-100)
// this.$emit 可以触发事件,并传参

然后父组件可以监听事件并根据需要更新一个本地的数据属性

 <Child :money="total" v-on:update:money="total = $event"/>
// $event 可以获取$emit的参数
 <Child :money="total" @update:money="total = $event"/>

为了方便起见,这种模式可以缩写,即 .sync 修饰符:

 <Child :money.sync="total"/>

相关文章

  • vue指令概览

    大纲 1、什么是vue指令2、向指令中传入参数3、指令中带入修饰符4、指令的缩写5、常见的vue指令5.1、v-m...

  • vue指令概览

    原文 博客原文 大纲 1、什么是vue指令2、向指令中传入参数3、指令中带入修饰符4、指令的缩写5、常见的vue指...

  • vue事件、指令、钩子

    vue事件、指令、钩子 vue的事件修饰符:.stop:阻止冒泡.prevent:阻止默认行为.capture:捕...

  • Vue-day3

    Vue常用指令 修饰符 表单修饰符 v-model.lazy:change事件,失去焦点才改变.number ①限...

  • Vue基础语法2

    Vue基础语法2 修饰符 修饰符是由点开头的指令后置来表示 事件修饰符 在时间处理程序中用event.prentD...

  • 实例学习vue.js目录

    目录 入门篇 初识vue vue基础指令 vue实例:标语大作战 事件修饰符 双向数据绑定 使用v-for遍历数据...

  • Vue-自定义指令

    一、自定义全局按键修饰符 二、使用 Vue.directive()定义全局的指令其中:参数1——指令的名称,注意:...

  • Vue 指令、修饰符

    指令 Directive 以 v- 开头的东西就是指令 语法 v-指令名:参数 = 值 , 如 v-on: cli...

  • Vue3去掉native修饰符导致的触发事件相关问题

    在Vue2.x中v-on指令有.native修饰符,当使用.native修饰符时,会在子组件根元素上加上相应事件监...

  • 02Vue的常用特性

    Vue的常用特性 表单操作 表单元素 表单域修饰符 自定义指令 无参数自定义指令定义的语法规则 无参数自定义指令用...

网友评论

      本文标题:Vue 指令、修饰符

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