如何在react-native-sortable-list中呈现列表?

时间:2018-05-10 12:27:28

标签: javascript android ios reactjs react-native

如何重新呈现数据?我更新了数据,但没有输出。

第34行

Sample code

setInterval(() => {
    let d= this.state.data;
    d.push({
        image: 'https://placekitten.com/200/240',
        text: 'Chloe3',
    })
    this.setState({
        data: d
    })
}, 1500)

我正在使用插件:pinreact-native-sortable-list

1 个答案:

答案 0 :(得分:0)

您没有正确更新状态变量。您正在通过在data数组中插入新元素来改变状态。此更改不会触发任何状态更新,因此不会调用render方法。根据{{​​1}} document,我们不应该直接将状态静音

  

永远不要直接改变this.state,因为之后调用setState()可能会替换你所做的突变。把this.state看作是不可变的。

将状态更新更改为(使用 ES6

React

或使用Array.concat

setInterval(() => {
  let d= this.state.data;
  const newRecord = {
    image: 'https://placekitten.com/200/240',
    text: 'Chloe3',
  };
  this.setState({
    data: [ ...d, newRecord]
  })
}, 1500);

希望这会有所帮助!