Vue3【十】07使用ref創建基本類型的響應式數據以及ref和reactive區別

Vue3【十】07使用ref創建基本類型的響應式數據以及ref和reactive區別

ref 也可以創建對象類型的響應式數據,不過要使用.value
ref 處理對象數據的時候,底層數據還是reactive格式的
reactive 重新分配一個新對象,會失去響應式可以使用Object.assign()來做整體替換,不會丟失響應式
若要使用一個基本類型的響應式數據,必須使用ref
若要使用一個響應式對象成績不深,ref和reactive都可以
若要使用一個響應式對象,層級比較深,推薦reactive

案例截圖

在這里插入圖片描述

目錄結構

在這里插入圖片描述

案例代碼

Person.vue

<template><div class="person"><h1>我是 兜率宮 組件</h1><h2>名字:{{ palace.name }}</h2><h2>數量:{{ palace.no }} </h2><button @click="changeName">修改名字</button><button @click="changeNo">修改數量</button><button @click="showAdd">查看信息</button><button @click="changePalace">修改宮殿</button></div><div class="baxian"><h2>八仙都有哪些?</h2><ul><li v-for="item in baxian" :key="item.id">{{ item.name }}</li></ul><button @click="changeFirstName"> 更改第一個名字 </button></div>
</template><script lang="ts" setup>
import { ref } from 'vue'// 數據// ref 也可以創建對象類型的響應式數據,不過要使用.value
// ref 處理對象數據的時候,底層數據還是reactive格式的
let palace = ref({name: '兜率宮',add: '兜率宮。兜率宮位于江西省鷹潭市的龍虎山,是道教的重要圣地之一。它被認為是太上老君的道場,位于離恨天之上,是道教神話中兜率天宮的一部分。兜率宮原址位于龍虎山天門山,有著悠久的歷史和文化背景。',no: 1
})let baxian = ref([{ id: 'b01', name: '鐵拐李' },{ id: 'b02', name: '漢鐘離' },{ id: 'b03', name: '張果老' },{ id: 'b04', name: '呂洞賓' },{ id: 'b05', name: '何仙姑' },{ id: 'b06', name: '藍采和' },{ id: 'b07', name: '韓湘子' },{ id: 'b08', name: '曹國舅' },
])console.log(palace)
console.log(baxian)// reactive 重新分配一個新對象,會失去響應式可以使用Object.assign()來做整體替換,不會丟失響應式
function changePalace() {Object.assign(palace.value, {name: '天師殿',add: '天師殿,是道教的重要圣地之一。',no: 20})
}// 方法
function changeFirstName() {baxian.value[0].name = '孫悟空'
}
function showAdd() {alert(palace.value.add)
}
function changeName() {palace.value.name = palace.value.name == "兜率宮" ? '永樂宮' : '兜率宮'console.log(palace)
}
function changeNo() {palace.value.no += 1console.log(palace.value.no)
}
// 若要使用一個基本類型的響應式數據,必須使用ref
// 若要使用一個響應式對象成績不深,ref和reactive都可以
// 若要使用一個響應式對象,層級比較深,推薦reactive
</script><style scoped>
.person {background-color: #ff9e4f;box-shadow: 0 0 10px;border-radius: 30px;padding: 30px;
}button {margin: 0 10px;padding: 0 5px;box-shadow: 0 0 5px;;
}
</style>

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

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

相關文章

自注意力機學習

自注意力機制的核心概念 1. Query, Key 和 Value Query&#xff08;查詢向量&#xff09;&#xff1a;可以看作是你當前在關注的輸入項。假設你正在閱讀一段文字&#xff0c;這就像你當前在讀的句子。 Key&#xff08;鍵向量&#xff09;&#xff1a;表示其他所有輸入項的標識…

保姆級 | MySQL的安裝配置教程(非常詳細)

一、下載Mysql 官網步驟 MySQLhttps://www.mysql.com/進入官網首頁 點擊DOWNLOADS 點擊MySQL Community (GPL) Downloads 點擊 小頁面直接進入 MySQL :: Download MySQL Installerhttps://dev.mysql.com/downloads/installer/點擊“Download”下載最新版本&#xff0c;其他…

【吊打面試官系列】MySQL 中 InnoDB 支持的四種事務隔離級別名稱,以及逐級之間的區別?

大家好&#xff0c;我是鋒哥。今天分享關于 【MySQL 中 InnoDB 支持的四種事務隔離級別名稱&#xff0c;以及逐級之間的區別&#xff1f;】面試題&#xff0c;希望對大家有幫助&#xff1b; MySQL 中 InnoDB 支持的四種事務隔離級別名稱&#xff0c;以及逐級之間的區別&#xf…

碳素鋼化學成分分析 螺紋鋼材質鑒定 鋼材維氏硬度檢測

碳素鋼的品種主要有圓鋼、扁鋼、方鋼等。經冷、熱加工后鋼材的表面不得有裂縫、結疤、夾雜、折疊和發紋等缺陷。尺寸和允許公差必須符合相應品種國家標準的要求。 具體分類、按化學成分分類 &#xff1a; 碳素鋼按化學成分&#xff08;即以含碳量&#xff09;可分為低碳鋼、中…

機器學習筆記 - stable diffusion web-ui安裝教程

一、Stable Diffusion WEB UI 屌絲勁發作了,所以本地調試了Stable Diffusion之后,就去看了一下Stable Diffusion WEB UI,網絡上各種打包套件什么的好像很火。國內的也就這個層次了,老外搞創新,國內跟著屁股后面搞搞應用層,就叫大神了。 不扯閑篇了,我們這里從git源碼直接…

問題:11單位內部人員對行政機關作出的行政處分不服,可申請行政復議. #其他#微信

問題&#xff1a;11單位內部人員對行政機關作出的行政處分不服,可申請行政復議. 參考答案如圖所示

問題:脾梗塞時,下列情況最符合的是 #職場發展#知識分享#媒體

問題&#xff1a;脾梗塞時,下列情況最符合的是 A、脾腫大 B、脾區摩擦感 C、兩者均有 D、兩者均無 參考答案如圖所示

uniapp視頻組件層級太高,解決方法使用subNvue原生子體窗口

目錄 前言 先看一下uniapp官網的原話&#xff1a; subNvue的一些參數介紹 subNvues使用方法&#xff1a; 綁定id 顯示 subNvue 彈出層 subNvue.show() 參數信息 subNvue.hide() 參數信息 在使用subNvue 原生子體窗口 遇到的一些問題 前言 nvue 兼容性 以及使用方式 控…

基于 中間件 的 數據交換平臺 的實現

一、介紹 A. 背景和目的 隨著云計算、大數據和物聯網等技術的快速發展&#xff0c;企業面臨著越來越多的數據交換和集成需求。不同系統之間的數據交換變得越來越復雜&#xff0c;而且數據量也越來越大&#xff0c;這對傳統的數據交換方式提出了更高的要求。 中間件作為一種能…

把ROS程序作為桌面圖標雙擊啟動

1 寫launch文件 把ROS程序寫成一個launch文件&#xff0c;例如 powerline_with_rviz.launch <launch><!-- Load camera parameters --><rosparam file"$(find choose_powerline)/config/camera_params.yaml" command"load"/><!-- …

深入理解并應用KTT求解約束性極值問題

KT 很簡單&#xff0c;口訣記心端&#xff0c;等式求最優&#xff0c;不等式驗證——小飛打油 以后每期嘗試編一句口訣&#xff0c;幫助大家記憶&#xff0c;可以是打油詩&#xff0c;也可以是類似“奇變偶不變&#xff0c;符號看象限”的口訣&#xff0c;如果編的不好&#xf…

2024年6月7日第十五周下午學習英語六級大綱

下午學習英語六級大綱的內容可以歸納為以下幾個主要方面&#xff1a; 一、考試概述 六級考試的對象&#xff1a;修完大學英語相應階段課程的在校大學生。考試目的&#xff1a;參照《大學英語教學指南》設定的教學目標&#xff0c;對我國大學生英語綜合運用能力進行科學測量&a…

Docker 常用命令以及鏡像選擇

目錄 1.Docker基本組成 2.鏡像選擇 2.1、鏡像推薦選擇方案 2.2版本選擇 3.Docker 命令 3.1鏡像管理 拉取鏡像&#xff1a; 列出鏡像&#xff1a; 刪除鏡像&#xff1a; 構建鏡像&#xff1a; 3.2容器管理 運行容器 列出運行中的容器和所有容器 停止容器 啟動重啟…

【Qt】QPushButton 與 QAction 的區別

1. QPushButton QPushButton 是一個界面控件&#xff0c;能顯示到界面上的。QPushButton 是 QWidget的一個子類&#xff0c;是一個表示按鈕的界面控件。它用于在GUI中提供一個標準的按鈕&#xff0c;用戶可以點擊它來觸發一個即時的動作或命令。按鈕可以顯示文本、圖標或兩者都…

為什么要將Modbus轉成MQTT

什么是Modbus Modbus 是一種串行通信協議&#xff0c;最初由Modicon&#xff08;現在的施耐德電氣Schneider Electric&#xff09;于1979年開發&#xff0c;用于可編程邏輯控制器&#xff08;PLC&#xff09;之間的通信。Modbus協議設計簡單&#xff0c;易于部署和維護&#xf…

從零入手人工智能(2)——搭建開發環境

1.前言 作為一名單片機工程師&#xff0c;想要轉型到人工智能開發領域的道路確實充滿了挑戰與未知。記得當我剛開始這段旅程時&#xff0c;心中充滿了迷茫和困惑。面對全新的領域&#xff0c;我既不清楚如何入手&#xff0c;也不知道能用人工智能干什么。正是這些迷茫和困惑&a…

用Python實現奇怪的瘋狂按鍵需求

項目背景 說起來好笑,假設有一個奇怪需求 — 僅僅是假設,不代表我有這個需求,雖然可以想象有人會有這個需求,但是這個人不是我,我也不認識任何這樣的人 — 瘋狂向某個程序輸出按鍵,比如,一會兒瘋狂輸入f,一會兒瘋狂輸入q。 如果是兩個按鍵需求,我想要設置一個最簡單…

M1Pro 使用跳板機

Mac (M1 Pro) 通過Iterm2 使用跳板機 1、由于堡壘機&#xff08;跳板機&#xff09;不能支持mac系統終端工具&#xff0c;只支持xshell等win生態。所以我們需要先安裝iterm2 裝iterms教程 這里頭對rz、sz的配置不詳細。我們可以這樣配置&#xff1a; where iterm2-send-zmod…

Windows 11中刪除分區的幾種方法,總有一種適合你

序言 想從Windows 11 PC中刪除一個分區,以便將空間重新分配給現有分區或創建一個新分區嗎?我們將為你介紹刪除Windows 11分區的多種方法。 刪除Windows上的分區時會發生什么 刪除分區時,Windows會擦除該分區的內容,并將該分區從電腦上的任何位置刪除。你將丟失保存在該分…

Github 2024-06-05 C開源項目日報 Top10

根據Github Trendings的統計,今日(2024-06-05統計)共有10個項目上榜。根據開發語言中項目的數量,匯總情況如下: 開發語言項目數量C項目10C++項目2Python項目1我的電視 - 安卓電視直播軟件 創建周期:40 天開發語言:CStar數量:649 個Fork數量:124 次關注人數:649 人貢獻人…