Как нажать TextInput в FlatList в родной реакции?

Я хочу научиться использовать FlatList в React Native, но я не могу понять, как вставлять элементы в данные (массив FlatList). Кто-нибудь может мне помочь ?

Вот мой родной код реакции:

import React, { Component } from 'react';
import { FlatList, StyleSheet, Text, Button,View ,TextInput} from 'react-native';


export default class App extends Component {
  constructor(props) {
    super(props);
    this.state = {text: '',
    data:[]
    };
  }

  render() {
    return (
      <View>
      <TextInput
       style={{height: 40}}
          placeholder="Task"
          onChangeText={(text) => this.setState({text})}/>
              <Button title="Add" onPress={this.addTask} />
      <FlatList

  renderItem={({item}) => <Text style={styles.item}>{item.key}</Text>}
/>
      </View>
    );
  }

}

const styles = StyleSheet.create({
  container: {
   flex: 1,
   paddingTop: 22
  },
  item: {
    padding: 10,
    fontSize: 18,
    height: 44,
  }
});

person Netheru    schedule 03.08.2017    source источник


Ответы (1)


Вам нужно добавить реквизит данных в компонент Flatlist.

<FlatList
  data={[{key: 'a'}, {key: 'b'}]}
  renderItem={({item}) => <Text>{item.key}</Text>}
/>

renderItem в основном перебирает элементы в массиве данных. Он не может этого сделать, если нет данных. Если вы начинаете с пустых данных, просто используйте data={[]}

person Satyam S    schedule 03.08.2017