Vue3中的模板語法和vue指令
1 模板插值語法
- 在script 聲明一個(gè)變量可以直接在template 使用用法為{{變量名稱}}
- 模板語法是可以編寫條件運(yùn)算的
- 運(yùn)算也是支持的
- 操作API 也是支持的
<template>
{{ message }}
{{ message2==0 ? '我是老大' : '我笑的' }}
{{ message2 + 1 }}
{{ message.split('').map(v => `4546$v`) }}
</template>
<script setup lang="ts">
const message = "我是唐少"
const message2:number = 1
</script>
<style>
</style>2 指令
- v- 開頭都是vue 的指令
- v-text 用來顯示文本
- v-html 用來展示富文本
- v-if 用來控制元素的顯示隱藏(切換真假DOM)
- v-else-if 表示 v-if 的“else if 塊”??梢枣?zhǔn)秸{(diào)用
- v-else v-if條件收尾語句
- v-show 用來控制元素的顯示隱藏(display none block Css切換)
- v-on 簡(jiǎn)寫@ 用來給元素添加事件
- v-bind 簡(jiǎn)寫: 用來綁定元素的屬性Attr
- v-model 雙向綁定
- v-for 用來遍歷元素
v-on修飾符
冒泡案例:
<template>
<div @click="parent">parent
<div @click.stop="child">child</div>
</div>
</template>
<script setup lang="ts">
const child = () => {
console.log('child');
// 點(diǎn)擊后不會(huì)答應(yīng)parent,因?yàn)楸蛔柚沽?
}
const parent = () => {
console.log('parent');
}
</script>阻止表單提交案例:
<template>
<form action="/">
<button @click.prevent="submit" type="submit">submit</button>
</form>
</template>
<script setup lang="ts">
const submit = () => {
console.log('child');
}
</script>
<style>
</style>v-bind 綁定class 案例 1:
<template>
<div :class="[flag ? 'active' : 'other', 'h']">456789</div>
</template>
<script setup lang="ts">
const flag: boolean = false;// 改成true后切換不同的效果
</script>
<style>
.active {
color: red;
}
.other {
color: blue;
}
.h {
height: 300px;
border: 1px solid #ccc;
}
</style>v-bind 綁定class 案例 2:
<template>
<div :class="flag">{{flag}}</div>
</template>
// 直接綁定cls
<script setup lang="ts">
type Cls = {
other: boolean,
h: boolean
}
const flag: Cls = {
other: false,
h: true
};
</script>
<style>
.active {
color: red;
}
.other {
color: blue;
}
.h {
height: 300px;
border: 1px solid #ccc;
}
</style>v-bind 綁定style案例:
<template>
<div :style="style">綁定style</div>
</template>
<script setup lang="ts">
type Style = {
height: string,
color: string
}
const style: Style = {
height: "300px",
color: "blue"
}
</script>
<style>
</style>v-model 案例:
<template>
<input v-model="message" type="text" />
<div>{{ message }}</div>
</template>
<script setup lang="ts">
import { ref } from 'vue' // 實(shí)時(shí)監(jiān)聽
const message = ref("message")
</script>
<style>
.active {
color: red;
}
.other {
color: blue;
}
.h {
height: 300px;
border: 1px solid #ccc;
}
</style>到此這篇關(guān)于Vue3中的模板語法和vue指令的文章就介紹到這了,更多相關(guān)vue3模板語法和vue指令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue報(bào)錯(cuò)"Failed?to?resolve?loader:less-loader"的解決方
這篇文章主要給大家介紹了關(guān)于Vue報(bào)錯(cuò)"Failed?to?resolve?loader:less-loader"的解決方法,文中通過圖文介紹的非常詳細(xì),對(duì)同樣遇到這樣問題的朋友具有一定的需要的朋友可以參考下2023-02-02
Vue3.2單文件組件setup的語法糖與新特性總結(jié)
ue3上線已經(jīng)很久了,許多小伙伴應(yīng)該都已經(jīng)使用過vue3了,下面這篇文章主要給大家介紹了關(guān)于Vue3.2單文件組件setup的語法糖與新特性總結(jié)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07
Vue使用axios發(fā)送請(qǐng)求并實(shí)現(xiàn)簡(jiǎn)單封裝的示例詳解
這篇文章主要介紹了Vue使用axios發(fā)送請(qǐng)求并實(shí)現(xiàn)簡(jiǎn)單封裝,主要包括安裝axios及簡(jiǎn)單使用配置方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-06-06
vue實(shí)現(xiàn)錄音功能js-audio-recorder帶波浪圖效果的示例
這篇文章主要介紹了vue實(shí)現(xiàn)錄音功能js-audio-recorder帶波浪圖效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08

