当前位置:首页 > VUE

vue 指令实现

2026-03-06 23:19:21VUE

Vue 指令是 Vue.js 提供的特殊属性,用于在 DOM 元素上应用特定的行为。以下是一些常见 Vue 指令的实现方式和使用场景:

v-model

双向数据绑定指令,常用于表单元素。它将表单输入的值与 Vue 实例的数据属性绑定。

<input v-model="message" placeholder="edit me">
<p>Message is: {{ message }}</p>

v-bind

动态绑定一个或多个属性,或一个组件 prop 到表达式。可以简写为 :

<img v-bind:src="imageSrc">
<!-- 简写 -->
<img :src="imageSrc">

v-for

基于源数据多次渲染元素或模板块。必须使用特定的语法 item in items

<li v-for="item in items" :key="item.id">
  {{ item.text }}
</li>

v-if / v-else / v-else-if

条件渲染指令,根据表达式的真假值来有条件地渲染元素。

<div v-if="type === 'A'">A</div>
<div v-else-if="type === 'B'">B</div>
<div v-else>C</div>

v-show

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

<h1 v-show="ok">Hello!</h1>

v-on

绑定事件监听器,可以简写为 @

<button v-on:click="doSomething">Click me</button>
<!-- 简写 -->
<button @click="doSomething">Click me</button>

v-text

更新元素的 textContent。与插值表达式 {{ }} 类似,但会覆盖元素内所有内容。

<span v-text="msg"></span>

v-html

更新元素的 innerHTML,用于输出真正的 HTML。注意防范 XSS 攻击。

<div v-html="htmlContent"></div>

v-pre

跳过这个元素和它的子元素的编译过程,显示原始 Mustache 标签。

<span v-pre>{{ this will not be compiled }}</span>

v-cloak

保持在元素上直到关联实例结束编译后自动移除,常用于解决初始化时的闪烁问题。

<div v-cloak>
  {{ message }}
</div>

v-once

只渲染元素和组件一次,随后的重新渲染会被跳过。

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

自定义指令

可以通过 Vue.directive 注册全局自定义指令,或在组件选项中通过 directives 注册局部指令。

Vue.directive('focus', {
  inserted: function (el) {
    el.focus()
  }
})

使用方式:

vue 指令实现

<input v-focus>

以上指令覆盖了 Vue.js 中大部分常用场景,合理使用可以极大提升开发效率和代码可维护性。

标签: 指令vue
分享给朋友:

相关文章

vue实现文字播放栏

vue实现文字播放栏

Vue 实现文字播放栏(跑马灯效果) 方法一:使用 CSS 动画 + Vue 数据绑定 通过 CSS 的 @keyframes 实现动画效果,结合 Vue 的动态数据绑定控制内容。 <tem…

vue实现drag

vue实现drag

Vue 实现拖拽功能的方法 在 Vue 中实现拖拽功能可以通过原生 HTML5 的拖拽 API 或第三方库如 vuedraggable 来完成。以下是两种常见方法的实现方式。 使用 HTML5 拖拽…

vue实现复选

vue实现复选

Vue 实现复选框 在 Vue 中实现复选框可以通过 v-model 指令绑定数据,同时结合 input 元素的 type="checkbox" 属性来实现。以下是几种常见的实现方式: 单个复选框…

vue nexttrick实现

vue nexttrick实现

Vue 中 nextTick 的实现原理 nextTick 是 Vue 提供的一个异步方法,用于在下次 DOM 更新循环结束之后执行延迟回调。它利用了 JavaScript 的事件循环机制,确保回调在…

vue实现气泡

vue实现气泡

Vue 实现气泡效果的方法 在 Vue 中实现气泡效果可以通过 CSS 动画、第三方库或自定义组件完成。以下是几种常见实现方式: 使用纯 CSS 和 Vue 过渡 通过 Vue 的过渡系统结合 CS…

vue前端实现

vue前端实现

Vue 前端实现基础步骤 安装 Vue.js 和相关依赖 通过 npm 或 yarn 安装 Vue.js,建议使用 Vue CLI 快速搭建项目。运行命令 npm install -g @vue/cl…