#reactjs #react-native #react-redux #react-hooks #react-native-flatlist
Вопрос:
Я использовал npm react-native-parallax-header для эффекта параллакса. Внутри параллакса я использовал плоский список.
Каждый раз, когда я добавляю новую категорию, плоский список должен перезагружать элементы, полученные из API, но в моем случае в нем перечислены не все элементы. он показывает только последние два элемента массива. Мои значения массива содержат 10 элементов, но в нем отображаются только 2 элемента.
Вот код для flatlist:
const renderContent = (label) => (
<View style={{ backgroundColor: '#FBFCFF', top: -10 }}>
<CategoryListView>
{this.state.categories amp;amp; <FlatList
horizontal={false}
data={this.state.categories}
contentContainerStyle={{ paddingBottom: 20 }}
refreshControl={
<RefreshControl refreshing={refreshing} onRefresh={this.loadCategories} />
}
showsHorizontalScrollIndicator={false}
showsVerticalScrollIndicator={true}
renderItem={({ item }) => { return <CardActivity gotoCategoryDetail={this.gotoCategoryDetail} key={item._id} category={item}></CardActivity> }}
keyExtractor={(item) => item._id}
/>}
</CategoryListView>
</View>
)
Вот код для списка категорий get
loadCategories = async () => {
this.setState({ refreshing: true });
let categories = await this.props.getCategories();
console.log(categories)
this.setState({ categories, lastFetchCategoriesTime: new Date() });
};
Вот код конструктора
constructor(props) {
super(props);
this.state = {
categories: [],
refreshing: false,
scrollEnd: false,
}
this.loadCategories();
const { navigation } = this.props;
this.focusListener = navigation.addListener("focus", () => {
// Call ur function here.. or add logic.
console.log(':::this will fire every time Page 1 receives navigation focus:::');
this.loadCategories();
});
};
Любая помощь будет очень признательна, пожалуйста…
Комментарии:
1. Всегда ли он показывает только 2? Или это просто когда вы перезагружаете категории?
2. Добавьте
extraData
реквизит в свой плоский список. Например, добавьтеextraData={this.state.categories}
в свой плоский список.3. @diedu во время добавления новой категории это происходит
4. @KishanBharda Пробовал, что не помогло
5. @diedu есть какие-нибудь новости??