React Native:如何显示提交的编辑模式中的更新数据

时间:2018-08-16 01:55:26

标签: reactjs react-native react-redux react-navigation

我有一个人名单。单击一个按钮后,将进入“人员”屏幕,显示其数据,如下所示:

Image of person data

单击“编辑”将启动带有编辑表单的模式。 enter image description here

此“编辑”表单有效,因为我可以记录状态并查看更新的数据。 关闭“编辑”表单后,我将回到“人员”屏幕,但不会显示更新的数据。但是,当我单击返回到“人员”列表时,它确实显示了更新的数据。

单击“人员”列表中的“人员”,通过React Navigation传递“人员”数据,如下所示:

displayListOfPeople = () => {
const { people } = this.props

return Object.values(people).map(person => (
  <ListItem
    key={person.id}
    title={person.name}
    onPress={() =>
      this.props.navigation.navigate('Person', {
        person,
        name: person.name
      })
    }
  />
))

}

然后我像这样显示Person数据:

render() {
const person = this.props.navigation.getParam('person')
const {
  name,
  date_entered,
  notes,
  location: {
    city,
    name: streetAddress,
    postalCode,
    region
  }
} = person
return (
  <View>
    <Card containerStyle={{ padding: 10 }}>
      <Text>Name: {name}</Text>
      <Text>Date Entered: {dateAdded(date_entered)}</Text>

以此类推...

关闭模式会调用React Navigation的goBack(),将用户带回“人”屏幕。

我的想法是,由于它是一种模式,因此更新的数据在将其关闭/提示为goBack()时不会触发Person的重新渲染。我对如何实现在模式中编辑数据,关闭模式并在“人员”屏幕上查看更新的数据的目标感到困惑。

我正在使用Redux。请让我知道我还能提供什么其他信息或说明。

0 个答案:

没有答案