我有一个 React 组件,它通过 props
接收数组或对象。我想做的是让一个事件重新排序这些 Prop 。但是,似乎 React 重新渲染仅在 state
更改时发生。
现在我在父对象中处理了排序,并将处理排序的方法作为 prop 传递,但理想情况下我希望负责呈现这些对象的组件也处理排序。
将 props
放入 state
似乎很糟糕,但最好的做法是什么?
最佳答案
Prop 是不可变的,但在你的情况下,你的数据似乎没有改变,只有排序顺序改变了,所以你可以:
- 将您的数据和排序函数作为 Prop 保存
- 将排序顺序存储在状态中
- 可以使用
getInitialState
返回默认排序顺序 - 当排序顺序改变时,状态被设置以便重新渲染发生
关于javascript - 在 React 中改变 Prop ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29369531/