1
我希望在auth-token的到期時間到來時自動註銷用戶。我將如何派遣註銷操作,而無需訪問商店(因此也無法訪問派遣功能)? 我覺得像是用超時組件包裝每個視圖組件,然後調度註銷似乎在頂部。超時後的Admin-On-Rest自動註銷
當我從issue 229和issue 574瞭解在GitHub上有從AOR的終極版商店訪問調度功能,而不是在一個部件是不乾淨的方式。
我該如何實現自動註銷(帶有註銷操作的存儲清除)?
我希望在auth-token的到期時間到來時自動註銷用戶。我將如何派遣註銷操作,而無需訪問商店(因此也無法訪問派遣功能)? 我覺得像是用超時組件包裝每個視圖組件,然後調度註銷似乎在頂部。超時後的Admin-On-Rest自動註銷
當我從issue 229和issue 574瞭解在GitHub上有從AOR的終極版商店訪問調度功能,而不是在一個部件是不乾淨的方式。
我該如何實現自動註銷(帶有註銷操作的存儲清除)?
您可以使用自定義傳奇,請參閱doc。
// in logoutIfTokenExpiredSaga.js
import { call, put, takeEvery } from 'redux-saga/effects';
import { userLogout } from 'admin-on-rest';
function getUserToken() {
return localStorage.getItem('token');
}
function hasTokenExpired(token) {
// Write your custom logic for token expiration check
}
function* autoLogout() {
const token = yield call(getUserToken);
const hasExpired = yield call(hasTokenExpired);
if (hasExpired) {
yield put(userLogout());
}
}
export default function* logoutIfTokenExpiredSaga() {
yield takeEvery('AOR/USER_LOGIN_SUCCESS', autoLogout);
}
正確閱讀您的問題後編輯^^ – Gildas