Reactjs điều kiện để xem được pagelist

Sau khi người dùng đăng xuất, paglist sẽ không thể truy cập được nữa thì check dk ntn vậy m.n… e có dùng cách {userInfo.data.id?

{renderList()}
: please Login } k biết được k m.n… hiện tại mình chưa get đc userIfo nên tham khảo ạ

Mình sẽ làm 1 cái flag là một state trong reducer. VD nhiư isLogin: false. Chỗ render ra pagelist dùng toán tử 3 ngôi {reducer.isLogin?<PageList/>:<div>please login</div>. Khi đăng nhập, đăng xuất thì update lại state.

1 Like

mình dùng userInfo check đc k b… theo mình thì khi đăng nhập vào sẽ có 1 tài khoản là userInfo… mình dùng toán tử { userInfo.data.id ?

{renderlist()}
:
please Login
}

Có 2 vấn đề chưa rõ ở đây:

  • web của bạn có mấy trang?
  • sau khi đăng nhập thì userInfo bạn lưu ở đâu?

. Ví dụ một user case thực tế: web có 2 trang là home và profile. Trang home hiện pageList còn nút đăng xuất nằm ở trang profile.

nếu theo cách này thì userInfo sẽ lưu ở đâu khi đăng nhập thành công sao cho nhấn đăng xuất thì userInfo sẽ thành null? Vậy thì phải đặt userInfo trong reducer (redux) hoặc localStorage để mọi page trong web đều truy xuất được. userInfo null thì không cần fetch list từ server hoặt ẩn pageList

mình lưu nó vào local nha b… sau khi logout thì mình clear local là đc mà nhỉ… mình dùng redux để gọi userInfo trong component rồi mình lấy userInfo check {userInfo.data.id?
{renderList()}
: please Login }… mình có 2 page… 1 page home login và 1 list… sau khi login thì tới thẳng page list và mình dùng đăng xuất ngay page list luôn… theo b thì cách của mình có khả thi k ạ… cho mình góp ý để tham khảo thêm với ạ

được bạn, nhưng theo mình lúc remove Item userInfo trong localStorage xong thì phải reload lại trang để get lại Item userinfo mới ra null được, kết hợp với state sẽ mượt hơn, nếu có 1 page thì không cần redux, dùng state của component đó là đc r

tks bạn nha… mình làm được rồi

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?