美文网首页
Vue实践与总结——指令

Vue实践与总结——指令

作者: xymspace | 来源:发表于2020-06-27 19:08 被阅读0次

Vue指令

目的:实现动态地绑定一个或多个 attribute,或一个组件 prop 到表达式。
职责:当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM。

指令分类

Vue会对v-开头的特殊属性进行解析,影响当前dom

类型 表达式
内容输出 v-once、v-cloak
循环 v-for
逻辑 v-if、v-else、v-else-if、v-show
属性绑定 v-bind(单项绑定)、v-model(双向绑定)
事件 v-on
其它 v-slot
  • v-show

    控制元素的display属性,会生成 元素dom

    适用于状态 频繁 切换的情况

  • v-if

    根据条件,创建或销毁元素,销毁时 会删除 元素dom

    适用于状态 较少 切换的情况

  • v-else

    限制!!:必须和v-if是同一级,且是相邻的兄弟级

    v-else
  • v-for

    除了在迭代的内容,还可获取到循环下标。

  • v-bind

缩写::
可以绑定(常用举例。还有其它绑定方式):

  • 选择器(:id,:class={class1:state1, class2:state2})
  • 样式(:style=[style1,style2])
  • 引用(:src="imageSrc")
    修饰符
  • .prop - 作为一个 DOM property 绑定而不是作为 attribute 绑定。(差别在哪里?)
  • .camel - (2.1.0+) 将 kebab-case attribute 名转换为 camelCase。(从 2.1.0 开始支持)
  • .sync
    (2.3.0+) 语法糖,会扩展成一个更新父组件绑定值的 v-on 侦听器。可实现双绑,比v-model更优秀,解决了v-model的缺点
this.$emit('update:title', newTitle)

<text-document v-bind:title.sync="doc.title"></text-document>

单向数据流:当数据发生改变,模板会重新渲染,模板语法v-bind等单项指令,不会在视图发生变化时,更新数据。

  • v-model(默认绑定value属性以及change事件)

使用限制:

  • input
  • select
  • textarea
  • components(自定义组件)
  • 通过事件响应后,发生改变的属性

修饰符

  • .lazy - 取代 input 监听 change 事件
  • .number - 输入字符串转为有效的数字
  • .trim - 输入首尾空格过滤

缺点

  • 不能同时绑定多个属性
  • 数据的修改比较隐蔽

双向数据流:数据变化-->视图渲染,视图变化-->数据改变

  • v-cloak

    • 不需要表达式

    • 用法

      这个指令保持在元素上直到关联实例结束编译。和 CSS 规则如 [v-cloak] { display: none } 一起用时,这个指令可以隐藏未编译的 Mustache 标签直到实例准备完毕。

  • v-on

    • 缩写@

    • 预期Function | Inline Statement | Object

    • 参数event

    • 修饰符

      • .stop - 调用 event.stopPropagation()
      • .prevent - 调用 event.preventDefault()
      • .capture - 添加事件侦听器时使用 capture 模式。
      • .self - 只当事件是从侦听器绑定的元素本身触发时才触发回调。
      • .{keyCode | keyAlias} - 只当事件是从特定键触发时才触发回调。
      • .native - 监听组件根元素的原生事件。
      • .once - 只触发一次回调。
      • .left - (2.2.0) 只当点击鼠标左键时触发。
      • .right - (2.2.0) 只当点击鼠标右键时触发。
      • .middle - (2.2.0) 只当点击鼠标中键时触发。
      • .passive - (2.3.0) 以 { passive: true } 模式添加侦听器

自定义指令

相关文章

  • Vue实践与总结——指令

    Vue指令 目的:实现动态地绑定一个或多个 attribute,或一个组件 prop 到表达式。职责:当表达式的值...

  • Vue 成长之旅 | Vue基础用法一

    一、Vue 基础使用 二 、 Vue的指令与过滤器 1、指令的概念 指令: 是vue为开发者提供的模板语法 , 用...

  • vue面试相关

    javascript面试总结 谈谈你对MVVM开发模式的理解 Vue 有哪些指令? 简述Vue的响应式原理 Vue...

  • 实用的Vue自定义指令总结

    本文总结了下面这些实用的 Vue 自定义指令 1.v-copy:复制粘贴指令 2.v-longpress:长按指令...

  • 2018-09-11

    vue第一天总结 1.下载并且安装vue.js,输入指令 upm install vue,下载成功之后出现文件即...

  • vue

    1,jQuery与vue区别 jQuery--指令式编程 vue--声明式编程 vue更加高效,流行 2,let与...

  • vue入门6---vue基本指令、自定义指令、插件

    一、vue常用指令概览 二、vue自定义指令 注册全局指令Vue.directive('my-directive'...

  • Git Flow 最佳实践笔记

    阅读了Vincent Driessen的Git最佳实践模式,这里对日常操作的指令加以总结记录。 常用指令 Feat...

  • vue2(二)

    目录 ◆ vue 简介◆ vue 的基本使用◆ vue 的调试工具◆ vue 的指令与过滤器◆ 品牌列表案例 一 ...

  • 2018-07-21

    ## 经典bug:1.模板引擎的渲染## 难点:### 0.vue总结#### 指令:```jsVue.direc...

网友评论

      本文标题:Vue实践与总结——指令

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