我正在试图找出为了正确使用此代码而应遵循的步骤
这是一个功能,我需要的是,如果缺少某些凭据,则将用户注销并从localforage中删除整个项目
function missingCredentials () {
localforage.getItem('apogeLiveLobbyData').then((apogeLiveLobbyData) => {
localforage.getItem('apogeeLiveCasinoUser').then((apogeeLiveCasinoUser) => {
localforage.getItem('apogeeLiveCasinoToken').then((apogeeLiveCasinoToken) => {
if (!apogeLiveLobbyData || !apogeeLiveCasinoUser || !apogeeLiveCasinoToken) {
localforage.removeItem('apogeLiveLobbyData');
localforage.removeItem('apogeeLiveCasinoUser');
localforage.removeItem('apogeeLiveCasinoToken');
AuthActions.logout();
}
});
}).catch((err) => {
console.log(err);
});
}).catch((err) => {
console.log(err);
});
}
那好吗?
但如果apogeLiveLobbyData
不可用,会发生什么?它会跳到下一步吗?
或者我应该以这种方式放置代码
function missingCredentials () {
localforage.getItem('apogeLiveLobbyData').then((apogeLiveLobbyData) => {
if (!apogeLiveLobbyData) {
localforage.removeItem('apogeLiveLobbyData');
AuthActions.logout();
}
localforage.getItem('apogeeLiveCasinoUser').then((apogeeLiveCasinoUser) => {
if (!apogeeLiveCasinoUser) {
localforage.removeItem('apogeLiveLobbyData');
localforage.removeItem('apogeeLiveCasinoUser');
AuthActions.logout();
}
localforage.getItem('apogeeLiveCasinoToken').then((apogeeLiveCasinoToken) => {
if (!apogeeLiveCasinoToken) {
localforage.removeItem('apogeLiveLobbyData');
localforage.removeItem('apogeeLiveCasinoUser');
localforage.removeItem('apogeeLiveCasinoToken');
AuthActions.logout();
}
});
}).catch((err) => {
console.log(err);
});
}).catch((err) => {
console.log(err);
});
}
所以,如果前两个凭证可用但第三个凭证不可用,那么我需要从localforage中删除所有项目,缺少哪个凭证并不重要,一旦缺少一个凭证,我应该记录用户并删除localforage中的所有项目。
是不是很清楚?