簡體   English   中英

什么是支架的目的,[],在handleActions()?

[英]What is the purpose of brackets, [], in handleActions()?

我遇到了一個香草計數器教程

const reducer = handleActions(
  {
    [increment]: state => ({ ...state, counter: state.counter + 1 }),
    [decrement]: state => ({ ...state, counter: state.counter - 1 })
  },
  defaultState
);

我沒有在redux-action docs中看到將動作包裝在方括號[]的目的和意義。

沒有這些,減速器將無法正常工作。

有任何想法嗎?

這是ES6中引入的計算對象屬性名稱表示法。

簡而言之,它允許您使用變量鍵定義對象:

const key = 'someKey';
const obj = {[key]: 1} // {someKey: 1}

在您的特定示例中, increment是由const increment = createAction('INCREMENT');創建的動作。 const increment = createAction('INCREMENT'); ,因此這就是為什么您需要使用[increment]在對象中定義屬性的原因。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM