在React Native中超过最大更新深度

时间:2020-04-05 12:53:32

标签: react-native object setstate

state = {
  markers : [
      { coordinate: {
        latitude: null,  
        longitude: null,
      },
      title: "",
      description: "",
      image: "",
    },
  ],
  region: {
      latitude: 45.52220671242907,
      longitude: -122.6653281029795,
      latitudeDelta: 0.04864195044303443,
      longitudeDelta: 0.040142817690068,
          }
  };

如何使用setState更改marker [0] .coordinate.latitude的值,请回答。

1 个答案:

答案 0 :(得分:0)

“ react native中超过最大更新深度”。

有此问题时就会出现

  1. 在循环中使用setState

  2. 直接在渲染函数内部使用setState

  3. 在单个组件中多次使用setState甚至是最坏的情况

确保您没有处于前两个条件下。

如果要根据需要多次使用setState,请尝试将这些组件拆分为子组件,并尝试组合setState更新。