小编Gru*_*und的帖子

mapStateToProps必须返回一个对象.取而代之的是地图{}?

您好我使用Immuteble Map for state,当我尝试maspStateToProps时,我有这个错误.

Uncaught Invariant Violation:mapStateToProps必须返回一个对象.而是收到Map {}.

这是我的代码:

零件:

    const mapStateToProps = (state) => {
      return state
    }

     class LoanCalculator extends React.Component{

      componentWillMount(){
       this.dispatch(loadConstraints());
     }

      render(){
        return (
          <div>
            <h1> Loan Calculator </h1>
            <SlidersBox {...this.props}/>
         </div>
       )
     }
   }

    LoanCalculator = connect(
      mapStateToProps
    )(LoanCalculator)

   export default LoanCalculator
Run Code Online (Sandbox Code Playgroud)

减速器

    import { Map } from 'immutable'
    import {LOAD_CONSTRAINTS, SET_AMOUNT_VALUE, SET_TERM_VALUE} from "../actions/actions";

    const initialState = new Map();

    export default function calculator(state = initialState, action){
      switch (action.type){
        case LOAD_CONSTRAINTS:
          return …
Run Code Online (Sandbox Code Playgroud)

reactjs immutable.js redux react-redux

9
推荐指数
1
解决办法
2万
查看次数

如何将数据从片段发送到深层嵌套组件?

我在项目上与 Relay Modern 合作。但是当我将片段放置到放置组件的位置时,我不确定如何从某个位置发送数据。

例如:

这是组件组合

-Page (QueryRenderer)
---Header
---body
  ---List
     --UserAutocomplete
Run Code Online (Sandbox Code Playgroud)

列表是片段,像 fragment PaymentsList on Payment UserAutocomplete 也是片段,但在 RootQuery 上fragment UserAutocomplete_users on RootQuery

实际上,我将这个片段放在查询 QueryRenderer 中 graphql` query PaymentQuery { ...PaymentsList ...UserAutocompleteFragment_users }

但是后来我在这里获得了 UserAutocomplete 的数据,我必须通过 props 向下发送 UserAtocomplete 组件的这些数据。有没有更好的方法,比如从商店获取这些数据而不是通过道具发送它们?

relay graphql relaymodern

5
推荐指数
0
解决办法
541
查看次数