当前位置:首页 > VUE

vue 指令实现

2026-01-12 10:25:06VUE

在 Vue.js 中,指令(Directives)是带有 v- 前缀的特殊属性,用于在 DOM 上应用响应式行为。以下是一些常用指令及其实现方式:

v-bind

动态绑定一个或多个属性到表达式。

<img v-bind:src="imageSrc" v-bind:alt="imageAlt">

简写形式:

<img :src="imageSrc" :alt="imageAlt">

v-model

在表单输入元素上创建双向数据绑定。

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

v-for

基于数组渲染列表。

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

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

条件渲染元素。

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

v-show

根据条件显示或隐藏元素(通过 CSS 的 display 属性)。

vue 指令实现

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

v-on

监听 DOM 事件并执行方法。

<button v-on:click="handleClick">Click me</button>

简写形式:

<button @click="handleClick">Click me</button>

v-text

更新元素的 textContent。

<span v-text="msg"></span>
<!-- 等同于 -->
<span>{{ msg }}</span>

v-html

更新元素的 innerHTML(注意 XSS 风险)。

vue 指令实现

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

v-pre

跳过这个元素和其子元素的编译。

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

v-cloak

保持在元素上直到关联实例结束编译(用于解决未编译模板闪现问题)。

[v-cloak] {
  display: none;
}
<div v-cloak>
  {{ message }}
</div>

v-once

只渲染元素和组件一次。

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

自定义指令

可以注册全局或局部自定义指令。

// 全局指令
Vue.directive('focus', {
  inserted: function (el) {
    el.focus()
  }
})

// 局部指令
directives: {
  focus: {
    inserted: function (el) {
      el.focus()
    }
  }
}

使用方式:

<input v-focus>

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

相关文章

vue 实现在线预览

vue 实现在线预览

Vue 实现在线预览的常见方法 使用 iframe 嵌入 通过 iframe 标签可以嵌入多种类型的文件,如 PDF、图片、网页等。需要确保文件地址可访问。 <template> &…

vue搜索实现

vue搜索实现

Vue 搜索功能实现方法 基于计算属性的搜索 在 Vue 中可以通过计算属性实现简单的搜索功能。这种方式适合小型数据集,利用 JavaScript 的 filter 方法进行筛选。 data() {…

vue实现banner

vue实现banner

Vue实现Banner轮播 使用Vue实现Banner轮播可以通过第三方库如swiper或vue-awesome-swiper,也可以手动实现基础轮播效果。以下是两种常见方法: 使用vue-…

自己实现vue

自己实现vue

实现简易版 Vue.js 核心功能 要实现一个简易版 Vue.js,需要理解其核心功能:数据响应式、模板编译、依赖收集和虚拟 DOM。以下分模块实现关键功能。 数据响应式(Reactivity) 通…

vue实现图片查看

vue实现图片查看

Vue 实现图片查看功能 在 Vue 中实现图片查看功能,可以通过原生实现或使用第三方库。以下是几种常见的方法: 原生实现方式 使用 Vue 的指令和事件绑定实现基础的图片查看功能。 <te…

vue实现前端跳转

vue实现前端跳转

Vue 实现前端跳转的方法 在 Vue 中实现前端跳转通常使用 Vue Router,以下是几种常见的跳转方式: 声明式导航(模板中使用 <router-link>) 在模板中直接使用…