Vue3入門-指令補充

在這里插入圖片描述

🏠個人主頁:Yui_
🍑操作環境:vscode\node.js
🚀所屬專欄:Vue3

image.png

文章目錄

  • 1. 指令修飾符
    • 1.1 按鍵修飾符
    • 1.2 事件修飾符
    • 1.3 v-model修飾符
  • 2. v-model用在其他表單元素上
  • 3. 樣式綁定
    • 3.1 操作class
  • 4. 操作style
  • 5. 總結

1. 指令修飾符

Vue 的指令修飾符(modifier)是以點(.)表示的特殊后綴,用于改變指令的行為。
修飾符讓指令更靈活,能滿足更多實際開發需求。

1.1 按鍵修飾符

  • @keydown.enter當enter鍵按下時觸發
  • @keyup.enter當enter鍵抬起時觸發
    演示:
<template>
<div><input type="text" @keydown.enter="fn">
</div>
</template><script setup>const fn = ()=>{console.log('enter鍵被按下~')}
</script><style scoped></style>

1.2 事件修飾符

  • @事件名.stop 阻止冒泡
  • @事件名.prevent 阻止默認行為
  • @事件名.stop.prevent既阻止冒泡又阻止默認行為
<template><div @click="onDivClick"><a href="https://baidu.com" @click.prevent>百度一下</a><p @click.stop="onPClick"></p><a href="https://baidu.com" @click.stop.prevent>百度一下</a></div>
</template><script setup>
const onPClick = () => {console.log('onPClick');
}const onDivClick = () => {console.log('onDivClick');
}
</script><style>
div {width: 400px;height: 200px;background: plum;
}div a {display: block;width: 100px;text-decoration: none;background: tomato;text-align: center;color: #fff;
}div p {width: 200px;height: 100px;background: rebeccapurple;
}
</style>

1.3 v-model修飾符

  • v-model.trim 去除首尾空格
  • v-model.number 用parseFloat()轉數字
  • v-model.lazy 失去焦點時同步數據,而不是輸入時同步數據
<template>
<div>名稱:<input type="text" v-model.lazy="goods.name"> <br><br>價格:<input type="text" v-model.trim="goods.price"> <br> <br>數量:<input type="text" v-model.number="goods.count"> <br> <br>
</div>
</template><script setup>import {reactive} from 'vue'const goods = reactive({name:'',price:'',count:''})
</script><style scoped></style>

image.png

2. v-model用在其他表單元素上

常見的表單元素都是可以用v-model綁定關聯,作用是可以快速獲取或者設置表單元素的值它會根據控件自動選取正確的屬性來更新元素。

輸入框 input:text ——> value
文本域 textarea ——> value
下拉菜單 select ——> value
單選框 input:radio ——> value
復選框 input:checkbox ——> checked / value

演示:

<template><div><!-- ?本域 --><textarea v-model="intro" cols="30" rows="4" placeholder="請輸??我介紹"></textarea><br /><br /><!-- 下菜菜單 --><select v-model="city"><option value="BJ">北京</option><option value="SH">上海</option><option value="SZ">深圳</option><option value="HZ">杭州</option></select><br /><br /><!-- 單選框:多個當中只能選擇?個,需要給單選框?動添加 value 屬性 --><input type="radio" value="a" v-model="blood" />A<input type="radio" value="b" v-model="blood" />B<input type="radio" value="ab" v-model="blood" />AB<input type="radio" value="o" v-model="blood" />O<br /><br /><input type="checkbox" v-model="isAgree" />是否同意??協議<br /><br /><input v-model="hobby" type="checkbox" value="LQ" />籃球<input v-model="hobby" type="checkbox" value="ZQ" />?球<input v-model="hobby" type="checkbox" value="YMQ" />??球<input v-model="hobby" type="checkbox" value="PPQ" />乒乓球<br /><input v-model="hobby" type="checkbox" value="PB" />跑步<input v-model="hobby" type="checkbox" value="YY" />游戲<input v-model="hobby" type="checkbox" value="PLT" />普拉提<input v-model="hobby" type="checkbox" value="LDW" />拉丁舞</div>
</template><script setup>
import { ref } from 'vue'//自我介紹
const intro = ref('')//收集城市
const city = ref('')//血型
const blood = ref('')//是否同意用戶協議
const isAgree = ref(false)//愛好
const hobby = ref(['a'])
</script><style scoped></style>

結論:

  • 對于下拉表的值,v-model寫在select上,關聯選中option的value
  • 對于當選框的值,v-model收集單選框的value
  • 對于復選框,一個復選框,v-model綁定布爾值,關聯checked屬性,一組復選框,v-model綁定數組,關聯value屬性,給復選框手動天津value

3. 樣式綁定

在 Vue 中,樣式綁定常用 v-bind:classv-bind:style(或它們的簡寫 :class:style)來實現動態樣式。

3.1 操作class

語法:

:class = "三元表達式/對象"

三元表達式

<p :class="條件?'類名1':'類名2'"></p> 

對象語法
當class動態綁定的是對象時,鍵就是類名,值就是布爾值,如果值為true,就添加這個類,否則就刪除這個類。

<p :class="{類名1:布爾值1,類名2:布爾值2}"></p> 

注意:靜態class可以于動態class共存

<p class="box" :class="{類名1:布爾值1,類名2:布爾值2}"></p> 

演示:

<script setup>
import { ref } from 'vue'
// 是否處于激活
const isActive = ref(true)
</script>
<template><div><!-- 1. 三元綁定 --><p :class="isActive ? 'active' : ''">Active1</p><!-- 2. 對象綁定 --><p :class="{ active: isActive }">Active2</p><!-- 3. 靜態class與動態class共存 --><p class="item" :class="{ active: isActive }">Active3</p></div>
</template>
<style>
.active {color: red;
}
</style>

image.png

4. 操作style

語法

<div class="box" :style = "{CSS屬性名1:CSS屬性值,CSS屬性名2:CSS屬性值}"> </div>

演示

<script setup>
import { reactive } from 'vue'
// ?內樣式對象
const styleObj = reactive({color: '#fff',backgroundColor: 'purple'
})
</script>
<template><div><p :style="styleObj">hahahahha</p></div>
</template>
<style></style>

5. 總結

Vue3指令補充的內容就到這里了,通過這些對指令應用的補充,可以更加方便我們實現想要的功能。

往期文章:
Vue3入門-必會前置知識-CSDN博客
Vue3入門-聲明式渲染+數據響應式-CSDN博客
Vue3入門-指令-CSDN博客

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/91192.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/91192.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/91192.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

UDP類型套接字

理解UDP協議&#xff1a;互聯網世界的"明信片"通信 UDP是什么&#xff1f;為什么需要它&#xff1f; 想象一下&#xff0c;你正在給朋友寄送兩種不同的東西&#xff1a;一份重要的合同文件和一疊度假時的風景明信片。對于合同文件&#xff0c;你會選擇掛號信&#xf…

redis快速入門教程

更新中基本概念安裝centOS安裝redis&#xff1a;yum install redis -y啟動&#xff1a;systemctl start redis設置開機啟動&#xff1a;systemctl enable redis檢查運行狀態&#xff1a;systemctl status redis遠程訪問編輯配置文件 vi /etc/redis.conf在其中修改為bind 0.0.0.…

UDP和TCP的主要區別是什么

UDP&#xff08;用戶數據報協議&#xff09;和 TCP&#xff08;傳輸控制協議&#xff09;是互聯網傳輸層的兩大核心協議&#xff0c;主要區別體現在??連接方式、可靠性、傳輸效率、頭部開銷??及??適用場景??上。以下是具體對比&#xff1a;??一、核心區別對比表???…

ASP .NET Core 8結合JWT輕松實現身份驗證和授權

身份驗證和授權是每一個后端服務必不可少的&#xff0c;可以實現對非法請求進行攔截&#xff0c;能夠有效保護數據的安全性。 JSON Web Token&#xff08;JWT&#xff09;是一項開放標準&#xff08;RFC 7519&#xff09;&#xff0c;它定義了一種緊湊且自包含的方法&#xff…

5G時代的智慧燈桿:塔能“一桿多用”方案如何激活城市新基建?

在《5G應用“揚帆”行動計劃》持續推進的進程之中&#xff0c;智慧桿已然成為了5G基站部署環節極為重要的載體&#xff0c;并且被明確地歸入到新型基礎設施建設的重點范疇之內。相關政策提出&#xff0c;要在2025年達成重點區域5G網絡全面且深度覆蓋的目標&#xff0c;與此同時…

護照閱讀器:國外證件識別的 OCR “解碼師”

國外證件版式多樣、語種繁雜&#xff0c;人工識別不僅耗時&#xff0c;還易因翻譯誤差、格式不熟悉導致信息錯漏。尤其在跨境業務場景中&#xff0c;傳統識別方式嚴重影響效率與準確性。護照閱讀器搭載的 OCR 技術成為破局關鍵。它能精準提取國外護照、駕照等證件上的多語種文字…

Linux部署Python服務

1、創建項目目錄與虛擬環境#確保安裝 Python 和 python3-venv 工具 sudo apt update sudo apt install python3 python3-pip python3-venvmkdir myproject cd myproject python3 -m venv venv # 創建虛擬環境#Linux source venv/bin/activate # 激活虛擬環境#Windowds venv\S…

【Python辦公】使用Python和Tkinter構建Excel數據導入MySQL工具(GUI版)

目錄 專欄導讀前言項目概述技術棧環境準備核心代碼實現1. 導入必要的庫2. 主應用類設計3. 用戶界面設計數據庫配置區域數據庫選擇區域4. 數據庫連接功能測試連接獲取數據庫列表5. 數據導入功能關鍵技術點解析1. SQLAlchemy 2.x 兼容性2. MySQL 8.0 認證問題3. 避免啟動時連接錯…

華為OD機試_2025 B卷_猜數字(Python,100分)(附詳細解題思路)

題目描述 一個人設定一組四碼的數字作為謎底&#xff0c;另一方猜。 每猜一個數&#xff0c;出數者就要根據這個數字給出提示&#xff0c;提示以XAYB形式呈現&#xff0c;直到猜中位置。 其中X表示位置正確的數的個數&#xff08;數字正確且位置正確&#xff09;&#xff0c;而…

【網絡安全】理解安全事件的“三分法”流程:應對警報的第一道防線

1. 簡介 在網絡安全領域&#xff0c;每天都會產生大量安全警報。作為一名安全分析師&#xff0c;識別、評估并優先處理這些警報的能力至關重要。三分法&#xff08;Triage&#xff09; 是確保安全團隊高效響應安全事件的核心流程&#xff0c;它能夠幫助我們合理分配資源、集中精…

AI大模型計數能力的深度剖析:從理論缺陷到技術改進

AI大模型計數能力的深度剖析&#xff1a;從理論缺陷到技術改進 AI大模型在計數任務上表現出明顯的局限性&#xff0c;這不僅反映了模型架構的核心缺陷&#xff0c;也揭示了當前深度學習技術在處理結構化信息時的本質挑戰。通過對文本計數、圖像計數以及相關技術改進方向的全面分…

[C語言初階]結構體初階

目錄一、結構體的聲明二、結構體的定義和初始化三、結構體成員訪問四、結構體傳參五、函數調用的參數壓棧&#xff08;了解&#xff09;在C語言中&#xff0c;我們知道數組是一組相同類型元素的集合&#xff0c;而結構體則更為靈活&#xff0c;它允許我們將不同類型的數據組合在…

LVS(Linux Virtual Server)集群技術詳解

一.集群和分布式: 集群&#xff1a;同一個業務系統&#xff0c;部署在多臺服務器上&#xff0c;集群中&#xff0c;每一臺服務器實現的功能沒有差別&#xff0c;數據和代碼都是一樣的 分布式&#xff1a;一個業務被拆成多個子業務&#xff0c;或者本身就是不同的業務&#…

leetcode_27 移除元素

1. 題意 給定一個數組&#xff0c;把不等于val的元素全部移動到數組的前面來。 不需要考慮值為val里的元素。 2. 題解 2.1 同向雙指針 我們利用雙指針&#xff0c;慢指針指向下一個插入的位置。而快指針不斷向前找到首個不為val的值&#xff0c;找到后將快指針位置值賦給慢…

Linux-Ubuntu下的git安裝與配置

一、安裝git1.打開終端&#xff0c;運行以下命令&#xff08;需要聯網&#xff09;sudo apt-get update sudo apt-get install git2.驗證安裝安裝完成之后&#xff0c;通過運行以下命令驗證git是否已經正確安裝&#xff1a;git --version二、配置git2.1.配置用戶名及郵箱地址在…

2D和3D激光slam的點云去運動畸變

在使用激光雷達設備采集點云的時候&#xff0c;我們都知道&#xff0c;激光雷達是邊運動邊采集的&#xff0c;每一個點云采集時的激光雷達的中心和姿態都是不一樣的&#xff0c;如果不加以矯正&#xff0c;那么這一幀數據就會出現問題&#xff0c;比如采集一個平面的結構的時候…

Java 熱門面試題 200 道(Markdown表格版)【簡化版】

Java 熱門面試題 200 道(Markdown表格版)【簡化版】 Java與數據庫核心面試題摘要 本文精選200道Java與數據庫高頻面試題,重點涵蓋: Java集合: HashMap原理(數組+鏈表/紅黑樹)、ConcurrentHashMap分段鎖優化、紅黑樹改進目的(解決哈希沖突性能問題) MySQL索引: 最左前…

OpenCV探索之旅:多尺度視覺與形狀的靈魂--圖像金字塔與輪廓分析

在我們學會用Canny算法勾勒處世界的輪廓之后&#xff0c;一個更深層次的問題擺在了面前&#xff1a;這些由像素組成的線條&#xff0c;如何才能被賦予“生命”&#xff0c;成為我們能夠理解和分析的“形狀”&#xff1f;如果一個物體在圖像中時大時小&#xff0c;我們又該如何穩…

Redis作緩存時存在的問題及其解決方案

Redis最常用的一個場景就是作為緩存&#xff0c;本文主要探討Redis作為緩存&#xff0c;在實踐中可能會有哪些問題&#xff1f;比如一致性, 穿擊, 穿透, 雪崩, 污染等。 為什么要理解Redis緩存問題 在高并發的業務場景下&#xff0c;數據庫大多數情況都是用戶并發訪問最薄弱的…

day17 力扣654.最大二叉樹 力扣617.合并二叉樹 力扣700.二叉搜索樹中的搜索 力扣98.驗證二叉搜索樹

最大二叉樹給定一個不重復的整數數組 nums 。 最大二叉樹 可以用下面的算法從 nums 遞歸地構建:創建一個根節點&#xff0c;其值為 nums 中的最大值。遞歸地在最大值 左邊 的 子數組前綴上 構建左子樹。遞歸地在最大值 右邊 的 子數組后綴上 構建右子樹。返回 nums 構建的 最大…