Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Redux 为“AccountList”提供的“object”类型的“accounts”属性无效,应为数组_Redux_Action - Fatal编程技术网

Redux 为“AccountList”提供的“object”类型的“accounts”属性无效,应为数组

Redux 为“AccountList”提供的“object”类型的“accounts”属性无效,应为数组,redux,action,Redux,Action,我在文件中导入了一个json文件,并创建了如下操作: import jsonData from './data/account_list_response.json'; const inAccountsList = () => { store.dispatch({ type: 'ACCOUNT_LIST', state: { accounts: jsonData } }); }; function mapStateToP

我在文件中导入了一个json文件,并创建了如下操作:

import jsonData from './data/account_list_response.json';
const inAccountsList = () => {
    store.dispatch({
      type: 'ACCOUNT_LIST',
      state: {
        accounts: jsonData
      }
    });
};
function mapStateToProps(state) {
  return { accounts: state.get('accounts').map(account => account.toJS()) };
}
然后,我在accountList容器中将帐户设置为道具,如下所示:

import jsonData from './data/account_list_response.json';
const inAccountsList = () => {
    store.dispatch({
      type: 'ACCOUNT_LIST',
      state: {
        accounts: jsonData
      }
    });
};
function mapStateToProps(state) {
  return { accounts: state.get('accounts').map(account => account.toJS()) };
}
最后

const AccountList = ({ accounts }) => (
  <div className="account-list">
    <h4 className="table-header">Accounts</h4>
    <Table hover>
      <thead>
        <tr>
          <th>#</th>
          <th>Account Number</th>
          <th>Description</th>
          <th>Balance</th>
          <th>Available Balance</th>
          <th>Currency</th>
        </tr>
      </thead>
      <tbody>
        {accounts.map((account, i) =>
          <AccountEntry
            key={account.id} idx={i + 1}
            {...account}
          />
      )}
      </tbody>
    </Table>
  </div>
);
const AccountList=({accounts})=>(
账户
#
帐号
描述
平衡
可用余额
通货
{accounts.map((account,i)=>
)}
);

发生错误,提供给
AccountList
object
类型的无效属性
accounts
,应为数组。为什么会这样???

你有什么地方吗?是的AccountList.propTypes={accounts:propTypes.arrayOf(propTypes.shape({id:PropTypes.string.isRequired,accountNumber:PropTypes.string.isRequired,description:PropTypes.string.isRequired,balance:PropTypes.number.isRequired,balanceAvailable:PropTypes.number.isRequired,currency:PropTypes.string.isRequired}).isRequired};我的json文件类似于{“id”:“0026000101000000001”,“accountNumber:“0026.0001.01.00000000001”,“description:“我的帐户1”,“余额”:42.0,“可用余额”:42.0,“货币”:“EUR”}好的,这就是为什么它需要一个数组。我如何解决这个问题??