Я нашел похожие вопросы, но ничего не работает. Если я нажимаю элемент списка, я получаю сообщение об ошибке «undefined не является функцией this.state.datasource.slice()»
Я стараюсь, чтобы все "приказано" было правдой
Я нашел похожие вопросы, но ничего не работает. Если я нажимаю элемент списка, я получаю сообщение об ошибке «undefined не является функцией this.state.datasource.slice()»
Я стараюсь, чтобы все "приказано" было правдой
Предполагая, что вы действительно хотите нарезать свой массив -> Попробуйте:
this.state.dataSource.slice(1,2)
в соответствии с этим вы должны определить начало и конец нарезки вот так:
arr.slice([begin[, end]])
Если вы просмотрели ListView
документацию, когда вы инициализируете dataSource
для вашего компонента ListView
, вы можете предоставить метод, который сообщает ListView
, если dataSource
изменился, так что ListView
будет перерисовываться.
constructor() {
super();
const ds = new ListView.DataSource({rowHasChanged: (e1, e2) => e1 !== e2});
this.state = {
dataSource: ds.cloneWithRows([/* initial data */]),
};
}