Vue之指令

指令(Directives)是带有 v- 前缀的特殊属性。指令属性的值预期是单一 JavaScript 表达式(除了 v-for,之后再讨论)。指令的职责就是当其表达式的值改变时相应地将某些行为应用到 DOM 上。


指令


描述


代码


v-if


根据表达式的值的真假条件渲染元素。在切换时元素及它的数据绑定 / 组件被销毁并重建。

当条件变化时该指令触发过渡效果


<div v-if="Math.random() > 0.5">

Now you see me

</div>


v-else


不需要表达式


<div v-else>Now you don‘t </div>


v-show


根据表达式之真假值,切换元素的 display CSS 属性。

当条件变化时该指令触发过渡效果


v-for


根据一组数组的选项列表进行渲染。 v-for 指令需要以 item in items 形式的特殊语法, items 是源数据数组并且 item 是数组元素迭代的别名。


<div v-for="item in items">

{{ item.text }}

</div>


v-bind


用于动态绑定属性和数据,比如

v-bind:class=‘classname’

更新HTML

缩写为“: ”


绑定class:<div v-bind:class="{

active: isActive }"></div>

绑定内联样式:

<div v-bind:style="styleObject">

</div>

Vue:

data: {

styleObject: {

color: ‘red‘,

fontSize: ‘13px‘

}

}


v-on


绑定事件监听器,触发JavaScript代码

缩写为@


<div id="example-2">

<button v-on:click="greet">

Greet</button></div>

Vue:

methods: {

greet: function (event) {

alert(‘Hello ‘ + this.name + ‘!‘) }


v-model


在表单控件或者组件上创建双向双向绑定


<input v-model="message"

placeholder="edit me">

Vue:

data: { message }


v-once


只渲染元素和组件一次。随后的重新渲染,元素/组件及其所有的子节点将被视为静态内容并跳过。这可以用于优化更新性能。


<span v-once>This will never change: {{msg}}</span>


v-pre


跳过这个元素和它的子元素的编译过程。可以用来显示原始 Mustache 标签。跳过大量没有指令的节点会加快编译。

key的作用:key 的特殊属性主要用在 Vue的虚拟DOM算法,在新旧nodes对比时辨识VNodes。如果不使用key,Vue会使用一种最大限度减少动态元素并且尽可能的尝试修复/再利用相同类型元素的算法。使用key,它会基于key的变化重新排列元素顺序,并且会移除key不存在的元素。

时间: 2024-08-04 21:29:59

Vue之指令的相关文章

vue之指令篇 ps简单的对比angular

这两天在开始vue的大型项目,发现和ng还是有许多不同,这里对比下两者的指令系统 难度系数:ng的指令难度大于vue:至少vue上暂时没发现@&=:require,compile,precompile,postcompile之类的小型地雷... 这篇文章只看表象:何为指令?这里借助ng的解释来解释vue,就是当你的项目中,需要一些dom操作,并且MVMM自带的事件指令感觉麻烦的时候,可以把一些dom操作封装到一个公共方法,这就是指令,大概用在vue上也可以说个70%: 写法,vue: Vue.d

vue的指令

我之前学了学angular 发现angular和vue的指令有点类似 先说一下 new  Vue({ el: "#box", // element(元素) 当前作用域 data(){ return { //用return返回对象 msg: "122" } } }) 首先是 v-model双向绑定数据 <input type="text" v-model="msg"/>   {{msg}} <!--取数据--&

vue自定义指令(Directive中的clickoutside.js)的理解

.array p { counter-increment: longen; margin-left: 10px } .array p::before { content: counter(longen) "." } .alink { font-size: 16px; color: blue } 阅读目录 vue自定义指令clickoutside.js的理解 回到顶部 vue自定义指令clickoutside.js的理解 vue自定义指令请看如下博客: vue自定义指令 一般在需要 DO

vue 常用指令

vue常用指令: 1. v-model   一般用在表单元素   input-->  text  ---> v-model='msg' 2. 循环数组: <li v-for="(value,index) in arr"> {{value}}{{index}} </li> 3.循环json: <li v-for="(value,key) in json"> {{value}} {{key}} </li> 事件

vue自定义指令

什么是指令? 指令 (Directives) 是带有 v- 前缀的特殊属性. 它可以写在DOM元素上,对html进行操作.常用的指令比如有:v-if,v-else,v-show,v-for等.这些都是官方直接给定的,另外Vue也允许注册自定义指令,有时这很有用. 自定义指令方法 自定义一个指令很简单,官网给出一个简单的例子,自定义一个聚焦指令v-focus: // 注册一个全局自定义指令 `v-focus` Vue.directive('focus', { // 当被绑定的元素插入到 DOM 中

Vue常用指令

vue中常用v-表示指令,下面总结一下常用的指令有哪些: 插入文本:v-text 相当于元素的innerText属性,必须是双标签 插入HMTL:v-html 相当于元素的innerHTML属性 循环:v-for v-for的使用,除了item属性,还有一些其他辅助属性.假设你现在循环的对象名字为students: 如果students是数组,还有index属性,如v-for="(item,index) in students"; 如果students是对象,还有value,key属性

Vue.js指令

一.学习目标 了解 什么 是 Vue.js 指令 理解 Vue.js 指令的 用途 掌握 Vue.js 指令的书写规范 能够 使用 Vue.js 指令完成部门页面交互效果(难点和重点) 二.指令的基本概念 2.1.什么是Vue.js指令 指令是带有v-前缀的特殊属性:v-bind.v-bind:is.v-bind:key.v-cloak.v-else.v-else-if.v-for.v-html.v-if.v-model 2.2.Vue.js指令的用途 在表达式的值改变时,将某些行为应用到DOM

Vue基础指令

一 Vue框架简介 Vue是一个构建数据驱动的web界面的渐进式框架. 目标是通过尽可能简单的API实现响应式的数据绑定和组合的视图组件 1 <div id="app"> 2 <span>你的名字是{{name}}</span> 3 </div> 4 var app=new Vue({ 5 el: '#app', 6 data:{ 7 name:'wdb' 8 } 9 }) 二 Vue指令 Vue的指令directives很像我们所说的自

VUE 初学指令篇

Vue是什么? vue是一套用于构建用户界面的渐进式框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合.另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动. vue简单的来理解就是一个前端的框架.将每个功能都封装成很多个模块,需要什么功能就引用什么模块. Vue的指令: 准备工作,引入vue.js,创建Vue对象. <!DOCTYPE html> <

vue自定义指令clickoutside使用以及扩展用法

vue自定义指令clickoutside使用以及扩展用法 产品使用vue+element作为前端框架.在功能开发过程中,难免遇到使用element的组件没办法满足特殊的业务需要,需要对其进行定制,例如要求选择器的弹出框中,增加搜索过滤(跟目前element的输入建议不太一样).于是想说说之前修改element组件,并定制为业务组件过程中遇到的问题. ps:因为对某些组件改动很大,所以是直接拷贝了一份源码,然后再进行修改,但是这样会遇到挺多问题,建议对于vue组件如果改动不大,只是简单功能扩展,就