Use lastUpdated as key to better sync regresh
This commit is contained in:
@@ -32,6 +32,10 @@ let Feed = ({ navigation, route }) => {
|
|||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
let subscribed = true;
|
let subscribed = true;
|
||||||
const getData = async () => {
|
const getData = async () => {
|
||||||
|
// TODO: Check for internet connection
|
||||||
|
const internet = true;
|
||||||
|
if(internet){
|
||||||
|
//byPass and load
|
||||||
let loggedIn = await API.isLoggedIn();
|
let loggedIn = await API.isLoggedIn();
|
||||||
if (!loggedIn) return navigation.reset({
|
if (!loggedIn) return navigation.reset({
|
||||||
index: 0,
|
index: 0,
|
||||||
@@ -40,6 +44,7 @@ let Feed = ({ navigation, route }) => {
|
|||||||
if (route.params && route.params.profileid) {
|
if (route.params && route.params.profileid) {
|
||||||
return navigation.navigate('Profile', { profileid: route.params.profileid })
|
return navigation.navigate('Profile', { profileid: route.params.profileid })
|
||||||
}
|
}
|
||||||
|
}
|
||||||
if(!route.params?.reRender){
|
if(!route.params?.reRender){
|
||||||
API.getMe().then((me) => {
|
API.getMe().then((me) => {
|
||||||
if (subscribed){
|
if (subscribed){
|
||||||
@@ -77,7 +82,7 @@ let Feed = ({ navigation, route }) => {
|
|||||||
<FlatList
|
<FlatList
|
||||||
data={Posts}
|
data={Posts}
|
||||||
renderItem={renderPost}
|
renderItem={renderPost}
|
||||||
keyExtractor={item => item._id || item.createdAt}
|
keyExtractor={item => item.lastUpdated || item._id || item.ceatedAt} //This may refresh the component
|
||||||
//ListHeaderComponent={<NewPost newPostCB={(newPost) => setPosts([newPost, ...Posts])} />}
|
//ListHeaderComponent={<NewPost newPostCB={(newPost) => setPosts([newPost, ...Posts])} />}
|
||||||
refreshing={Posts.length === 0}
|
refreshing={Posts.length === 0}
|
||||||
onRefresh={() => {
|
onRefresh={() => {
|
||||||
|
|||||||
Reference in New Issue
Block a user