vue訓練營10 vuex使用及理解

2021-10-08 21:23:34 字數 992 閱讀 3114

回答策略:

1.首先給vuex下乙個定義

2.vuex解決了哪些問題,解讀理念

3.什麼時候我們需要vuex

4.你的具體用法

5.簡述原理,提公升層級

總結:1.vuex是狀態管理庫。它以全域性方式集中管理應用的狀態,並且可以保證狀態變更的可**性。

2.vuex主要解決的就是多元件之間狀態共享的問題。利用各種元件通訊方式,雖然也能做到狀態共享,但是往往需要多個元件之間保持狀態的一致性,這種模式很容易出現問題,也會使程式變得複雜。vuex通過把元件的共享狀態抽取出來,以全域性單例模式管理,這樣任何元件都能用一致的方式獲取和修改狀態,響應式的資料也能夠保證簡潔的單向資料流動,我們的**將變得更結構化且易維護。

3.vuex並非必須的,它幫我們管理共享狀態,但卻帶來更多的概念和框架。如果我們不打算開發大型單頁應用或者我們的應用並沒有大量全域性的狀態需要維護,完全沒有使用vuex的必要。

4.我在使用vuex過程中有如下理解,首先是對核心概念的理解和運用。將全域性狀態放在state物件中,它本身是一顆狀態樹,元件中使用store例項的state訪問這些狀態;然後有配套的mutation方法修改這些狀態,並且只能用mutation修改狀態,在元件中呼叫commit方法提交mutation;如果應用中有非同步操作或者複雜邏輯組合,我們需要編寫action,執行結束後如果有狀態修改仍然需要提交mutation,元件中呼叫這些action使用dispatch方法派發。最後是模組化,通過modules選項組織拆分出去的各個子模組,在訪問狀態時注意新增子模組的名稱。如果子模組有設定namespace,那麼在提交mutation和派發action時還需要額外的命名空間字首。

5.vuex在實現單向資料流時需要做到資料的響應式,通過原始碼的學習發現是借用了vue的資料響應化特性實現的,它會利用vue將state作為data對其進行響應化處理,從而使得這些狀態發生變化時,能夠導致元件重新渲染。

vue訓練營8 vue效能優化

答題思路 根據題目描述,這裡主要 vue 層面的優化 一 路由懶載入 const router new vuerouter 二 k eep alive 快取頁面 id 三 使用 v show 復用dom class cell v show value class on n 10000 v show ...

vue訓練營4 vue中的diff演算法

原始碼分析1 diff的必要性,src core instance lifecycle.jslifecycle.js mountcomponent 元件中可能存在很多個 data 中的key使用 原始碼分析2 diff的執行方式,src core vdom patch.js patchvnode p...

龍珠計畫Python訓練營筆記 day10

美國 練習 按州總捐款熱力地圖 參賽選手自由發揮 補充 第乙個補充熱力地圖的參賽選手可以獲得天池杯子乙個 呼叫相關包 import pandas as pd import matplotlib.pyplot as plt import seaborn as sns 設定畫布大小 f,ax plt.s...