鍍金池/ 問答/HTML/ 使用vuex的時(shí)候,在store文件夾下面新建一個(gè)mutation-types.

使用vuex的時(shí)候,在store文件夾下面新建一個(gè)mutation-types.js文件,內(nèi)容就是轉(zhuǎn)一下大小寫,有什么作用?

使用vuex的時(shí)候,看到有些項(xiàng)目是在store文件夾下面新建一個(gè)mutation-types.js文件,內(nèi)容像下面這樣:

export const RECEIVE_ADDRESS = 'receive_address' // 接收地址
export const RECEIVE_USER_INFO = 'receive_user_info' // 接收用戶信息
export const RESET_USER_INFO = 'reset_user_info' // 重置用戶信息
//...

這樣轉(zhuǎn)一下大小寫有什么作用?我感覺有點(diǎn)多余。請(qǐng)大佬說一說。

回答
編輯回答
涼心人
  1. 減少硬編碼,比如多個(gè)地方存在“reset_user_info”時(shí),用常量來引用,可維護(hù)性更高,減少手抖多一個(gè)字母少一個(gè)字母的錯(cuò)誤。
  2. 大項(xiàng)目多人開發(fā)時(shí),對(duì)mutations統(tǒng)一管理,找函數(shù)很直觀。
  3. 可以根據(jù)模塊來分類來給mutation type命名,名字多長(zhǎng)都可以,常量名簡(jiǎn)短就好了。比如:
export const RESET_USER_INFO = 'user/reset_user_info'
export const GET_PRO_LIST = 'product/get_list'

如果個(gè)人小項(xiàng)目,就沒必要用了,轉(zhuǎn)來轉(zhuǎn)去麻煩。

2018年5月28日 23:41
編輯回答
離魂曲

一般情況下,變量的值是常量時(shí),會(huì)將變量用大寫表示,所以看到一個(gè)變量是大寫的,可能就是表明,這個(gè)變量代表的是常量。

另一種情況就是樓上說的,當(dāng)你很多地方都用這個(gè)常量時(shí),發(fā)現(xiàn)常量的值要變,就只能一個(gè)一個(gè)改用這個(gè)常量的地方,而用變量保存,每個(gè)地方引用的都是變量,這樣只改變量的賦值就行了。

2018年8月9日 00:35
編輯回答
安于心

單一職責(zé)咯,就是把 mutation 專門歸類到一個(gè)文件中了,后面的小寫理論上你可以隨便寫,只不過在一些調(diào)試工具顯示的信息中會(huì)降低可讀性,另一點(diǎn)就是,你 commit 的 mutation 的時(shí)候,也可以不使用 VERB_FOO 這種變量,直接寫后面的小寫的部分,但是這樣造成的問題是,當(dāng)你想要更改某一個(gè) mutation 時(shí),必須依賴于它的所有代碼都改一遍,耦合性太高了。

2017年8月12日 11:49