第Ⅱ章-Ⅰ Vue3基础语法

第Ⅰ章-Ⅰ 了解Vue3 创建一个Vue3项目
第Ⅰ章-Ⅱ Vue3自定义创建项目 项目文件详解
第Ⅰ章-III Vite 创建vue3 项目
第Ⅰ章-IV npm yarn pnpm 包管理器

第Ⅱ章-Ⅰ Vue3基础语法

文本渲染命令

插值表达式

用于在模板中插入变量或表达式的结果。

vue 复制代码
<div>{{ message }}</div>

在这个示例中,{{ message }} 插入了 message 变量的值。

v-text

用于直接将表达式的结果作为文本插入到元素中。

vue 复制代码
<div v-text="message"></div>

v-html

用于将 HTML 字符串直接渲染为元素。

vue 复制代码
<div v-html="htmlContent"></div>

提示:在这里,v-html 会将 htmlContent 变量的内容作为 HTML 来渲染,而不是文本。这在插入富文本或动态生成 HTML 内容时非常实用。注意:由于 v-html 会直接渲染内容,因此可能存在安全问题,例如 XSS 攻击。因此在使用 v-html 时,要确保输入数据的安全性。

属性绑定命令

v-bind

用于将组件的属性或DOM元素与变量绑定。

vue 复制代码
<img v-bind:src="imageUrl" v-bind:alt="imageAlt" />

在这里,v-bind:src 和 v-bind:alt 分别绑定了 imageUrl 和 imageAlt 变量的值。

缩写

vue 复制代码
<img :src="imageUrl" :alt="imageAlt" />

你可以使用 : 作为 v-bind 的缩写。

事件处理指令

v-on

用于将组件或 DOM 元素的事件与方法绑定。

vue 复制代码
<button v-on:click="handleClick">Click Me</button>

缩写

@click 是 v-on:click 的缩写,用于将 click 事件绑定到 handleClick 方法。

vue 复制代码
<button @click="handleClick">Click Me</button>

$event

在事件处理方法中,$event 可以用于访问触发事件的原始事件对象。

vue 复制代码
<button @click="handleClick">Click Me</button>

<script setup>
function handleClick(event) {
    console.log(event); // 输出事件对象
}
</script>

handleClick 方法通过参数 event 访问了触发 click 事件的事件对象。

事件修饰符

  • .stop:阻止事件冒泡
vue 复制代码
<button @click.stop="handleClick">Click Me</button>
  • .prevent阻止默认行为
vue 复制代码
<form @submit.prevent="handleSubmit"></form>
  • .once只触发一次
vue 复制代码
<button @click.once="handleClick">Click Me</button>
  • .self仅在事件目标与绑定目标相同时触发
vue 复制代码
<div @click.self="handleClick">Click Me</div>

条件渲染指令

v-if

用于根据条件决定是否渲染元素。

vue 复制代码
<div v-if="isVisible">This is visible.</div>

在这里,v-if 根据 isVisible 变量来决定是否渲染 div。

v-else-if v-else

配合v-if使用

vue 复制代码
<div v-if="status === 'loading'">Loading...</div>
<div v-else-if="status === 'success'">Success!</div>
<div v-else>Error</div>

v-show

用于根据条件决定元素的显示与隐藏。

  • 与 v-if 的区别:v-show 通过设置 CSS 的 display 属性来隐藏或显示元素,这使其在切换状态时更快,但不适合大量元素的渲染。
  • v-show 适合需要频繁切换显示状态的元素,而 v-if 适合只在需要时才渲染或移除元素的场景。

循环遍历指令

v-for

用于根据数组或对象来渲染元素。

vue 复制代码
<ul>
   <li v-for="item in items" :key="item.id">{{ item.name }}</li>
</ul>

在这里,v-for 根据 items 列表来循环渲染 li 元素。

提示:vue3的以上基础语法与vue2相同。

相关推荐
前端摸鱼匠4 分钟前
Vue 3 的v-bind合并行为:讲解v-bind与普通属性合并的规则
前端·javascript·vue.js·前端框架·ecmascript
REDcker25 分钟前
浏览器端Web程序性能分析与优化实战 DevTools指标与工程清单
开发语言·前端·javascript·vue·ecmascript·php·js
Linsk2 小时前
Java和JavaScript的关系真是雷峰和雷峰塔的关系吗?
java·javascript·oracle
当时只道寻常2 小时前
浏览器文本复制到剪贴板:企业级最佳实践
javascript
Alice-YUE3 小时前
【js高频八股】防抖与节流
开发语言·前端·javascript·笔记·学习·ecmascript
是上好佳佳佳呀4 小时前
【前端(十一)】JavaScript 语法基础笔记(多语言对比)
前端·javascript·笔记
莎士比亚的文学花园5 小时前
Linux驱动开发(3)——设备树
开发语言·javascript·ecmascript
01漫游者5 小时前
JavaScript函数与对象增强知识
开发语言·javascript·ecmascript
threelab7 小时前
Three.js 代码云效果 | 三维可视化 / AI 提示词
开发语言·javascript·人工智能
yqcoder9 小时前
JavaScript 柯里化:把“大餐”拆成“小炒”的艺术
开发语言·javascript·ecmascript