Vue.js - Vue 的安裝 以及 常用的 Vue 指令 【0基礎向 Vue 基礎學習】

文章目錄

  • Vue 快速上手
    • 1、Vue.js 官網 & Vue.js 的獲取
    • 2、創建 Vue 實例,初始化渲染
    • 3、插值表達式
  • 安裝 Vue 開發者工具:裝插件調試 Vue 應用
  • Vue 指令
    • 1、v-show 指令
    • 2、v-if
    • 3、v-else & v-else-if
    • 4、v-on
      • v-on 調用傳參
    • 5、v-bind
      • v-bind 對于樣式控制的增強 - 操作class
    • 6、v-for
      • v-for 中的 key
    • 7、v-model

Vue 快速上手

1、Vue.js 官網 & Vue.js 的獲取

? Vue3 官網:Vue.js - 漸進式 JavaScript 框架 | Vue.js

? Vue2 官網:Vue.js

? 本系列將以如下的 Vue.js 版本為大家進行實例的演示與講解

<!-- 引入的是開發版本包 - 包含完整的注釋和警告 -->
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>

2、創建 Vue 實例,初始化渲染

在這里插入圖片描述

創建 Vue 實例,初始化渲染的核心步驟:

  1. 準備容器 (Vue所管理的范圍)
  2. 引包 (開發版本包 / 生產版本包) 官網
  3. 創建實例
  4. 添加配置項 => 完成渲染

創建一個 vue 實例:

const app = new Vue({el: '#app',//el 指定掛載點,選擇器指定控制的是哪個盒子data: {//data 提供數據message: '迪幻',count: 2386},})

完整的代碼:

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app">{{message}}{{count}}</div>
</body><script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script><script>const app = new Vue({el: '#app',data: {message: '迪幻',count: 2386},})
</script></html>

3、插值表達式

插值表達式是一種 Vue 的模板語法

在這里插入圖片描述

效果圖

在這里插入圖片描述

1. 作用:

利用表達式進行插值,渲染到頁面中

表達式:是可以被求值的代碼,JS引擎會將其計算出一個結果

money + 100
money - 100
money * 10
money / 10 
price >= 100 ? '真貴':'還行'
obj.name
arr[0]
fn()
obj.fn()

2. 語法:

{{ 表達式 }}

<h3>{{title}}<h3><p>{{nickName.toUpperCase()}}</p><p>{{age >= 18 ? '成年':'未成年'}}</p><p>{{obj.name}}</p><p>{{fn()}}</p>

3. 注意點:

(1)使用的數據必須存在(data)

(2)支持的是表達式,而非語句,比如:if for…

(3)不能在標簽屬性中使用{{ }} 插值

安裝 Vue 開發者工具:裝插件調試 Vue 應用

(1)通過谷歌應用商店安裝 (國外網站)

(2)極簡插件: 下載 → 開發者模式 → 拖拽安裝 → 插件詳情允許訪問文件

下載地址:https://chrome.zzzmh.cn/index

在這里插入圖片描述

打開 Vue 運行的頁面,調試工具中 Vue 欄,即可查看修改數據,進行調試。

在這里插入圖片描述

Vue 指令

1、v-show 指令

  • 作用: 控制元素顯示隱藏
  • 語法: v-show = “表達式” 表達式值 true 顯示, false 隱藏
  • 原理: 切換 display:none 控制顯示隱藏
  • 場景: 頻繁切換顯示隱藏的場景

在這里插入圖片描述

2、v-if

  • 作用: 控制元素顯示隱藏(條件渲染)
  • 語法: v-if = “表達式” 表達式值 true 顯示, false 隱藏
  • 原理: 基于條件判斷,是否 創建 或 移除 元素節點
  • 場景: 要么顯示,要么隱藏,不頻繁切換的場景

在這里插入圖片描述

注意:v-show 和 v-if 最大的區別:

  • v-show 只是控制元素的顯示與隱藏,但是元素是一直存在的
  • v-if 是只有在其表達式為真時才會創建相應的標簽,而為假時則不會創建此標簽
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app"><div v-show="flag">這是v-show控制的盒子</div><div v-if="flag">這是v-if控制的盒子</div></div>
</body><script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>
<script>const app = new Vue({el: '#app',data: {flag: true}})
</script></html>

3、v-else & v-else-if

  • 作用: 輔助 v-if 進行判斷渲染
  • 語法: v-else v-else-if = “表達式”
  • 注意: 需要緊挨著 v-if 一起使用

例如:

在這里插入圖片描述

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app"><p v-if="gender===1">男生</p><p v-else>女生</p><p v-if="score>90">grade-A</p><p v-else-if="score>80">grade-B</p><p v-else-if="score>70">grade-C</p><p v-else="score>60">grade-D</p></div>
</body>
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>
<script>const app = new Vue({el: '#app',data: {gender: 1,score: 79}})
</script></html>

4、v-on

  • 作用: 注冊事件
  • 語法: ① v-on:事件名 = “內聯語句” ② v-on:事件名 = “methods中的函數名”
  • 簡寫:@事件名 = 添加監聽 + 提供處理邏輯
  • 注意:methods函數內的 this 指向 Vue 實例

在這里插入圖片描述

在這里插入圖片描述

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app"><button @click="login">{{message}}</button></div>
</body>
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>
<script>const app = new Vue({el: '#app',data: {message: '迪幻登錄',},methods: {login() {alert(this.message)}}})</script></html>

v-on 調用傳參

在這里插入圖片描述

例子

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app"><h1>余額:</h1>{{money}}</h1><button @click="buy(price1)">{{title1}}</button><button @click="buy(price2)">{{title2}}</button></div>
</body>
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>
<script>const app = new Vue({el: '#app',data: {money: 100,price1: 5,price2: 10,title1: '可樂5元',title2: '蛋糕10元'},methods: {buy(price) {this.money -= price}},})
</script></html>

5、v-bind

  • 作用:動態的設置html的標簽屬性 → src url title …
  • 語法:v-bind:屬性名=“表達式”
  • 注意:簡寫形式 :屬性名=“表達式”

在這里插入圖片描述

v-bind 對于樣式控制的增強 - 操作class

語法 :class = “對象/數組”

① 對象 → 鍵就是類名,值是布爾值。如果值為 true,有這個類,否則沒有這個類

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

適用場景:一個類名,來回切換

在這里插入圖片描述

② 數組 → 數組中所有的類,都會添加到盒子上,本質就是一個 class 列表

<div class="box" :class="[ 類名1, 類名2, 類名3 ]"></div>
:class="['pink', 'big']"

適用場景:批量添加或刪除類

注意:如果沒有 img 標簽沒有 v-bind 屬性的話,src就會只會被認為是 url 這個字面量,而不是一個變量

實例

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app"><!-- v-bind:src   =>   :src --><img src="imgUrl" v-bind:title="msg" alt=""><img :src="imgUrl" :title="msg" alt=""></div><script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script><script>const app = new Vue({el: '#app',data: {imgUrl: './imgs/10-02.png',msg: 'hello 迪幻'}})</script>
</body></html>

6、v-for

  1. 作用: 基于數據循環, 多次渲染整個元素

    • 遍歷數組語法: v-for = “(item, index) in 數組”

    • item 每一項, index 下標

    • 省略 index: v-for = “item in 數組” → 數組、對象、數字…

在這里插入圖片描述

v-for 中的 key

  • 語法:key屬性 = “唯一標識”
  • 作用:給列表項添加的唯一標識。便于Vue進行列表項的正確排序復用。

在這里插入圖片描述

v-for 的默認行為會嘗試 原地修改元素 (就地復用)

  • key作用: 給元素添加的唯一標識,便于Vue進行列表項的正確排序復用。

  • 注意點:

    1. key 的值只能是 字符串 或 數字類型
    2. key 的值必須具有 唯一性
    3. 推薦使用 id 作為 key(唯一),不推薦使用 index 作為 key(會變化,不對應)

在這里插入圖片描述

7、v-model

  1. 作用: 給 表單元素 使用, 雙向數據綁定 ① 數據變化 → 視圖自動更新 ② 視圖變化 → 數據自動更新
  2. 語法: v-model = ‘變量’

在這里插入圖片描述

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><div id="app"><input type="text" v-model="username"></div>
</body>
<script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script>
<script>const app = new Vue({el: '#app',data: {username: 'dihuan',},})
</script></html>

常見的表單元素都可以用 v-model 綁定關聯 → 快速 獲取 或 設置 表單元素的值

v-model 應用于其他表單元素

它會根據 控件類型 自動選取 正確的方法 來更新元素

在這里插入圖片描述

本次分享就到這里,感謝大家的支持與觀看,若有謬誤請各位諒解與指出,我們下期再見

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

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

相關文章

【算法】前綴和算法——和為k的子數組之和

題解&#xff1a;和為k的子數組之和(前綴和算法) 目錄 1.題目2.題解思路2.1前綴和 哈希表&#xff0c;算法步驟&#xff1a;2.2細節如下&#xff1a;2.3參考代碼&#xff1a; 3.總結及思考 1.題目 題目鏈接&#xff1a;LINK 2.題解思路 暴力求解自然不用多說&#xff0c;時…

【SQL】外連接 LEFT JOIN

目錄 一.內連接與外連接 1.內連接&#xff08;inner join&#xff09; 2.外連接&#xff08;outer join&#xff09; 二.兩表連接 1.我們先來試試看內連接&#xff1a; 2.我們再來試試外連接 三.單表外連接 四.總結 一.內連接與外連接 先得介紹內連接和外連接兩個概念&…

第199題|關于函數的周期性問題|函數強化訓練(六)|武忠祥老師每日一題 5月24日

解題思路&#xff1a;解這道題我們要用到下面這個結論 f(x)連續&#xff0c;以T為周期時&#xff0c;原函數以T為周期的充分必要條件是&#xff1a; (A) sin x顯然是以π為周期的&#xff0c;我們可以看到并不等于0,根據結論&#xff0c;A的原函數顯然不是周期函數。 (B) 的…

memmove使?和模擬實現

一&#xff1a;memmove的使? 這是memmove在庫里的定義&#xff0c;具體可在cplusplus.com查看 void * memmove ( void * destination, const void * source, size_t num ) ? 和memcpy的差別就是memmove函數處理的源內存塊和?標內存塊是可以重疊的。 ? 如果源空間和?標…

你以為的私域是真正的私域嘛??你的私域流量真的屬于你嘛?

大家好 我是一個軟件開發公司的產品經理 專注私域電商行業7年有余 您的私域流量是真正的屬于你自己嘛&#xff1f; 私域的定義 私域的界定&#xff1a;一個互聯網私有數據&#xff08;資產&#xff09;積蓄的載體。這個載體的數據權益私有&#xff0c;且具備用戶規則制定權…

Mysql 備份恢復 mysqldump與xtrabackup備份

1.1 備份的原因 備份是數據安全的最后一道防線&#xff0c;對于任何數據丟失的場景&#xff0c;備份雖然不一定能恢復百分之百的數據 (取決于備份周期)&#xff0c;但至少能將損失降到最低。衡量備份恢復有兩個重要的指標&#xff1a;恢復點目標(RPO) 和恢復時間目標(RTO)&…

數據庫常用命令(1)

DML 1.添加數據&#xff08;insert into&#xff09; insert into 表名 values (值1&#xff0c;值2....); 表示成功運行&#xff1a; 2.修改數據&#xff08;update&#xff09; update 表名 set 字段名1值1&#xff0c;字段名2值2.....【where條件】 3.刪除數據&#xff0…

元年科技數據智能研發部負責人張亞東受邀為第十三屆中國PMO大會演講嘉賓

全國PMO專業人士年度盛會 北京元年科技股份有限公司數據智能研發部負責人張亞東先生受邀為PMO評論主辦的2024第十三屆中國PMO大會演講嘉賓&#xff0c;演講議題為“大模型時代&#xff0c;AI創新型工具提升項目管理效率”。大會將于6月29-30日在北京舉辦&#xff0c;敬請關注&a…

jmeter之HTTP請求和查看結果樹

一、HTTP請求作用&#xff1a; 可以發送post或get請求等請求可以向服務器發送參數或消息體數據可以進行文件上傳 HTTP請求&#xff1a;是線程組內的取樣器最常用的的一個原件 二、查看界面 添加一個HTTP請求&#xff1a;選擇線程組–添加–取樣器–HTTP請求 默認界面 名稱和…

ThreadLocal為什么會導致內存泄漏?

問題引出&#xff1a; ThreadLocal是為了解決什么問題而產生的&#xff1f; ThreadLocal發生內存泄漏的根本原因是什么&#xff1f; 如何避免內存泄漏的發生&#xff1f;定義 為了解決多個線程同時操作程序中的同一個變量而導致的數據不一致性的問題。 ??假設現在有兩個線程A…

如何獲取一個城市或者一個區域的玫瑰風向圖?

玫瑰風向圖是一種直觀展示風向和風速的圖形工具&#xff0c;它在氣象學、城市規劃、農業等領域都有廣泛的應用。那么&#xff0c;如何獲取某個城市或某個區域的玫瑰風向圖呢&#xff1f; 首先&#xff0c;我們可以借助互聯網資源獲取玫瑰風向圖。現代網絡技術發達&#xff0c;…

前端 防抖和節流

在前端開發中&#xff0c;防抖&#xff08;Debounce&#xff09;和節流&#xff08;Throttle&#xff09;是兩種常用的性能優化技術&#xff0c;尤其在處理頻繁觸發的事件時顯得尤為重要。無論是在用戶輸入、窗口調整大小&#xff0c;還是滾動事件中&#xff0c;這兩種技術都可…

3D 生成重建011-LucidDreamer 優化SDS過平滑結果的一種探索

3D 生成重建011-LucidDreamer 優化SDS過平滑結果的一種探索 文章目錄 0論文工作1論文方法2 效果 0論文工作 文本到3D生成的最新進展標志著生成模型的一個重要里程碑&#xff0c;為在各種現實場景中創建富有想象力的3D資產打開了新的可能性。雖然最近在文本到3D生成方面的進展…

自建公式,VBA在Excel中解一元一次方程

自建公式,VBA在Excel中解一元一次方程 文章目錄 前言一、運行效果圖二、操作思路三、代碼1.去除方程中未知數,將未知數轉為“*0”2.計算方程中常數3.計算方程中未知數的系數一,先將未知數替換成“*1”4.計算方程中未知數的系數二5.計算方程得數前言 小學必考內容:一元一次…

掌握Python基本語法的終極指南【基本語法部分】

一、基本語法部分 1.簡單數據類型 1.1字符串類型及操作 字符串訪問&#xff1a; 1.索引訪問 mystr"Hello world" #索引訪問 print(mystr[0]) #H print(mystr[-1]) #d print(mystr[-7]) #o print(mystr[6]) #w 2.切片訪問 [頭下標&#xff1a;尾下標] &#x…

齊護K210系列教程(三十二)_在線模型訓練

在線模型訓練 概念理解準備工作1 采集圖像1.1 圖像要求1.2 使用K210采集圖片 2 標注圖像3 打包數據集4 上傳數據4.1創建項目4.1.1圖像分類創建項目4.1.2圖像檢測創建項目 4.2上傳數據4.2.1分類檢測上傳數據4.2.2圖像檢測上傳數據 5 訓練模型6 部署模型以及測試7 測試效果7.1圖像…

leetcode 152. 乘積最大子數組

. - 力扣&#xff08;LeetCode&#xff09; 給你一個整數數組 nums &#xff0c;請你找出數組中乘積最大的非空連續 子數組 &#xff08;該子數組中至少包含一個數字&#xff09;&#xff0c;并返回該子數組所對應的乘積。 測試用例的答案是一個 32-位 整數。 示例 1: 輸入…

MongoDB關系處理:優化數據管理、提升性能的最佳實踐

MongoDB 是一種 NoSQL 數據庫&#xff0c;它使用文檔模型來存儲數據&#xff0c;這與關系型數據庫&#xff08;RDBMS&#xff09;有顯著不同。本文將詳細介紹 MongoDB 中的關系處理&#xff0c;包括基本語法、命令、示例、應用場景、注意事項和總結。 基本語法 文檔和集合 M…

30.靜態代碼分析工具clang-tidy

文章目錄 基本介紹安裝clang-tidy使用clang-tidy配置文件和格式文件配置文件格式文件使用配置文件和格式化文件 在代碼中設置排除clang-tidy檢測reference 歡迎訪問個人網絡日志&#x1f339;&#x1f339;知行空間&#x1f339;&#x1f339; 基本介紹 clang-tidy 是一個基于…

JDBC總結

目錄 JDBC(java database connection) JDBC連接數據庫步驟: 1. 在項目中添加jar文件,如圖所示 2.加載驅動類 向數據庫中插入數據代碼示例: 第一種: 第二種: 查詢操作 : 第一種: 第二種: JDBC(java database connection) java數據庫連接.api(應用程序編程接口) ,可…