vuex理論與工程實踐後的心得總結

2021-09-16 12:44:54 字數 1390 閱讀 7585

vuex理論與工程實踐後的心得總結

一、前言

對任何一門技術的研究,都要知其原理,同時洞察原理背後解決我們什麼樣的場景痛點,所以研究任何技術的套路都是:這個是什麼?能做什麼?如何做?(好3w原則:who,what,how),這樣才能真正精通。

二、vuex使用後的體會:

為什麼需要vuex:vuex是為了解決各個元件(兄弟,還是父子)之間資料的通訊(或者叫state的共享)而出現的,簡單的程式可以用父子或者兄弟元件之間state的通訊就能解決,但有時候乙份資料需要被不同的元件共享,這時候如果有乙個共享的全域性變數就好了,而vuex的state就是全域性變數,嚴格定義是帶了響應式的全域性變數(即全域性狀態)。

state的劃分:全域性state(root根節點下的)、module state(要通過命名空間來訪問)、元件 state(在元件本身的區域性狀態)。

vuex 工作原理中有四個元素理解:state,getters,mutation,action。vuex本質:呼叫state中資料去渲染元件view,或者接收元件的指令去完成對state資料的改變。state,getters都是定義是讀state資料,所以在元件的computed中定義對映或者引入使用;mutation和action都是為了改變state中的值,只是它預設第乙個引數就是state(即改變前的state資料),然後返回的改變後的state,這樣就實現了不直接改變state,其實mutation,action就是一套智慧型演算法(計算變更前state和當前去改變的state兩者之間哪些需要變化),mutation和action通常是前者用來定義同步,後者定義非同步,他們的共同點是都只能只有2個引數,mutation接收第乙個引數預設為state(即寫不寫,它都是第乙個引數),第二個可選payload。action的第乙個引數是context(而context物件有,第二個是payload。

module的理解:必須用它,省得所有的狀態都在root節點下,沒有模組化的程式基本上沒有辦法團隊合作,即把state分為module進行管理,最終在根節點下進行宣告注入。

module 命名空間理解:由於module中的state,getters,mutation,action,除state外,其它三個預設情況下都是全域性的,這樣容易與其它module中的重名,所以必須加上命名空間的限制,當然訪問時,必須通過命名空間才能訪問。

元件如何讀取或者寫入vuex中的state(不管是全域性的state,還是module中的state),這主要把vuex的state,getters,mutation,action這四人分別要對映到元件的computed(state和getters)和methods(mutation和action)中,想本元件this一樣使用他們,對映宣告的方法可能有四,五種,哪一種都行,看應用情景要求和自己的程式設計習慣,不要太絕對,靈活使用就行。

modules中的action盡量定義非同步操作,及所有與後台api的打交道均在這裡進行呼叫。

軟體工程理論與實踐 (筆記)

1 待開發系統的應用領域,即專案的應用範圍。2 使用者的要求。3 軟體開發人員的喜好和能力。4 系統的可移植性要求。5 演算法和資料結構的複雜性。答 對識別符號進行命名時,要注意以下幾點。1 按照識別符號的實際意義命名,使其名稱具有直觀性,能夠體現識別符號的語義。這樣可以幫助開發人員對識別符號進行理...

軟體工程 理論 方法與實踐

第一章 概述 軟體是電腦程式 規程以及計算機系統可能需要的相關文件和資料。軟體一般分為通用和定製軟體。軟體的特性 1 軟體是複雜的 2 軟體是不可見的 3 軟體是不斷變化的 4 大多數軟體是定製的,而不是通過已有的構件組裝的。軟體工程師為了經濟的獲得能夠在實際機器上高效執行的可靠軟體而建立和使用的一...

軟體工程理論方法與實踐

第一章 概述 軟體是人類思維的傑作,並成為人類現代生活的催化劑。今天軟體遍布整個世界,在生物工程 現代通訊 宇宙探索 商務處理 工業控制等方面發揮出巨大的威力,並推動了商業 科學和工程領域的跨越式發展,對整個社會的經濟和文化產生了深遠的影響。軟體工程師為了解決開發成本效益和軟體質量的問題而產生的。軟...