日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

頻繁切換v-show,不頻繁使用v-if?面試的時候可別再這么說了!

來源: 責編: 時間:2024-04-22 09:15:38 187觀看
導讀Hello,大家好,我是 Sunday。很多同學應該都在面試中遇到過這樣的問題:“v-if 和 v-show 有什么區別?我們應該在什么情況下使用 v-if,什么情況下使用 v-show 呢?”很多同學一聽,這不太簡單了,基礎八股文啊(官網中也有明確的文檔

Hello,大家好,我是 Sunday。omE28資訊網——每日最新資訊28at.com

很多同學應該都在面試中遇到過這樣的問題:“v-if 和 v-show 有什么區別?我們應該在什么情況下使用 v-if,什么情況下使用 v-show 呢?”omE28資訊網——每日最新資訊28at.com

很多同學一聽,這不太簡單了,基礎八股文啊(官網中也有明確的文檔說明),瞧不起誰呢?直接來一通標準回答:“v-if 控制 dom 的渲染,v-show 通過 css 控制 dom 的顯示。如果切換頻繁,那么就使用 v-show,否則就使用 v-if”。omE28資訊網——每日最新資訊28at.com

但是真實情況真的是這樣嗎?面試官接下來的一個問題,可能就會直接讓你無法回答:“那么,什么情況下叫做切換頻繁,什么情況下叫做切換不頻繁呢?”omE28資訊網——每日最新資訊28at.com

是啊,什么是頻繁,什么是不頻繁呢?omE28資訊網——每日最新資訊28at.com

我們無法判斷 dom 是否頻繁切換

假如:有一個用戶表單,表單上存在一個“角色”按鈕:omE28資訊網——每日最新資訊28at.com

圖片圖片omE28資訊網——每日最新資訊28at.com

點擊角色按鈕,彈出一個 dialog 彈出層:omE28資訊網——每日最新資訊28at.com

圖片圖片omE28資訊網——每日最新資訊28at.com

那么此時,角色 dialog 的切換是否頻繁呢? 我相信很多同學都沒有辦法給出一個確切的答案吧。omE28資訊網——每日最新資訊28at.com

所以說:omE28資訊網——每日最新資訊28at.com

在實際開發中:開發者是無法判斷 dom 是否頻繁切換的。omE28資訊網——每日最新資訊28at.com

v-if 和 v-show 的真實使用場景

我們可以回憶下日常工作中的真實場景,決定使用 v-if 和 v-show 的依據是什么呢?omE28資訊網——每日最新資訊28at.com

其核心應該是:v-if 會導致 組件(dom)的重新渲染,但是 v-show 不會。omE28資訊網——每日最新資訊28at.com

重新渲染就意味著:整個生命周期會重新執行。 當 v-if 為 false 時,整個組件是不存在的,而變為 true 之后,組件會重新執行所有的生命周期回調。假如我們在 created 這種生命周期鉤子中執行了 接口請求 的方法,這就意味著 此時接口的請求才會觸發 。如果接口觸發會 依賴其他參數(如:props) 那么此時的請求時機會剛剛好。omE28資訊網——每日最新資訊28at.com

而對于 v-show 而言,整個生命周期只會觸發一次。 當 v-show 為 false 時,組件雖然看不到,但是 已經存在了。這也就意味著,假如我們在 created 這種生命周期鉤子中執行了 接口請求 的方法, 此時接口已經請求了,如果接口請求中涉及到 點擊之后才可以獲取的參數(props),那么此時因為沒有點擊,所以你可能會得到一個錯誤。omE28資訊網——每日最新資訊28at.com

該問題如何回答

所以,基于以上原因,這個問題大家可以這么說(以下回答僅供參考):omE28資訊網——每日最新資訊28at.com

Vue 官方中對 v-if 和 v-show 的使用場景區分是:當需要頻繁顯示和隱藏的時候,那么需要使用 v-show 否則需要使用 v-if。omE28資訊網——每日最新資訊28at.com

但是在實際的開發中我們是 無法分辨一個場景(Dialog)是否是頻繁切換的。omE28資訊網——每日最新資訊28at.com

所以說,在實際開發中,判斷 v-if 和 v-show 的使用需要根據它們的特性來進行判斷。omE28資訊網——每日最新資訊28at.com

v-show 不會導致組件被銷毀和渲染,但是 v-if 會導致組件被銷毀和重新渲染。omE28資訊網——每日最新資訊28at.com

也就是說:當使用 v-show 時,雖然用戶看不到組件,但是當前組件的生命周期都已經執行了。如果在 created 中存在接口的調用,則【接口已經調用完成】。同時,當組件隱藏時,組件并不會銷毀。相反:如果是 v-if 的每次點擊時都會重新渲染組件,重新執行生命周期,隱藏則銷毀組件。omE28資訊網——每日最新資訊28at.com

所以說,判斷 v-if 和 v-show 的使用條件應該是:當組件需要在指定時機創建,在指定時機銷毀時,需要使用 v-if。而 當組件僅需要創建一次時,則可以使用 v-show。omE28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-84467-0.html頻繁切換v-show,不頻繁使用v-if?面試的時候可別再這么說了!

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 探秘C++虛函數:解密多態的奧秘

下一篇: 在前端中,什么是幽靈依賴?

標簽:
  • 熱門焦點
  • 2023年Q2用戶偏好榜:12+256G版本成新主流

    3月份的性能榜、性價比榜和好評榜之后,就要輪到2023年的第二季度偏好榜了,上半年的新機潮已經過去,最明顯的肯定就是大內存和存儲的機型了,另外部分中端機也取消了屏幕塑料支架
  • 28個SpringBoot項目中常用注解,日常開發、求職面試不再懵圈

    前言在使用SpringBoot開發中或者在求職面試中都會使用到很多注解或者問到注解相關的知識。本文主要對一些常用的注解進行了總結,同時也會舉出具體例子,供大家學習和參考。注解
  • 一文看懂為蘋果Vision Pro開發應用程序

    譯者 | 布加迪審校 | 重樓蘋果的Vision Pro是一款混合現實(MR)頭戴設備。Vision Pro結合了虛擬現實(VR)和增強現實(AR)的沉浸感。其高分辨率顯示屏、先進的傳感器和強大的處理能力
  • K8S | Service服務發現

    一、背景在微服務架構中,這里以開發環境「Dev」為基礎來描述,在K8S集群中通常會開放:路由網關、注冊中心、配置中心等相關服務,可以被集群外部訪問;圖片對于測試「Tes」環境或者
  • 十個簡單但很有用的Python裝飾器

    裝飾器(Decorators)是Python中一種強大而靈活的功能,用于修改或增強函數或類的行為。裝飾器本質上是一個函數,它接受另一個函數或類作為參數,并返回一個新的函數或類。它們通常用
  • 得物寵物生意「狂飆」,發力“它經濟”

    作者|花花小萌主近日,得物宣布正式上線寵物鑒別,通過得物App內的“在線鑒別”,可找到鑒別寵物的選項。通過上傳自家寵物的部位細節,就能收獲擁有專業資質認證的得物鑒
  • 阿里瓴羊One推出背后,零售企業迎數字化新解

    作者:劉曠近年來隨著數字經濟的高速發展,各式各樣的SaaS應用服務更是層出不窮,但本質上SaaS大多局限于單一業務流層面,對用戶核心關切的增長問題等則沒有提供更好的解法。在Saa
  • iQOO Neo8 Pro搶先上架:首發天璣9200+ 安卓性能之王

    經過了一段時間的密集爆料,昨日iQOO官方如期對外宣布:將于5月23日推出全新的iQOO Neo8系列新品,官方稱這是一款擁有旗艦級性能調校的作品。隨著發布時
  • 華為舉行春季智慧辦公新品發布會 首次推出電子墨水屏平板

    北京時間2月27日晚,華為在巴塞羅那舉行春季智慧辦公新品發布會,在海外市場推出之前已經在中國市場上市的筆記本、平板、激光打印機等辦公產品,并首次推出搭載
Top 主站蜘蛛池模板: 通州市| 三江| 新蔡县| 临桂县| 鲁甸县| 阿拉善右旗| 连州市| 大关县| 许昌县| 宜丰县| 互助| 长垣县| 景谷| 拉孜县| 辉南县| 华安县| 泸西县| 皮山县| 磐安县| 曲水县| 哈巴河县| 江都市| 铅山县| 东辽县| 景宁| 弥渡县| 吴旗县| 苍梧县| 鄂州市| 铜山县| 景宁| 项城市| 乳源| 逊克县| 隆林| 建德市| 江陵县| 杂多县| 珠海市| 观塘区| 长治市|