将变量传递给redux

时间:2017-09-27 17:07:31

标签: reactjs react-redux

我正在尝试将两个变量(字符串)传递给redux操作。这样做的目的是组件知道它正在尝试查找的公司简档的ID,并且我们使用redux获取该数据,因为这种模式在几个地方使用。

在组件中:

componentWillMount() {
  this.props.actions.getObject('Company', '16747fce-f0b1-422b-aa60-220c2dccac58')
}

在行动中:

export function getObject(dataClass, dataId) {
  return {
    'BAQEND': {
      types: [
        GET_OBJECT,
        GET_OBJECT_SUCCESS,
        GET_OBJECT_FAILURE
      ],
      payload: (db) => db.(dataClass).load(dataId)
    }
  }
}

dataClass是公司,dataID是guid。

我的问题是我无法在那里得到dataClass变量而没有抛出错误。 dataID效果很好。如果我要更改payload: (db) => db.Company.load(dataId)它可行。

我尝试了一些不起作用的事情:

payload: (db) => db.dataClass.load(dataId)
payload: (db) => db.`${dataClass}`.load(dataId)
`payload: (db) => db.${dataClass}.load(dataId)`

1 个答案:

答案 0 :(得分:1)

如果我理解正确,db是一个拥有Company

键(属性)的对象
db = {
  Company: 'someGuid'
}

如果是这种情况,那么您可以像这样使用Property accessors
db['Company']db[dataClass]