"vuex-persistedstate pour basculer entre sessionStorage et localStorage"
P粉295728625
P粉295728625 2023-08-25 23:06:52
0
1
461

Si l'utilisateur coche la case "Se souvenir de moi", je souhaite passer de sessionStorage à localStorage, pendant que j'utilise vuex-persistedstate

exporter le magasin par défaut (fonction (/* { ssrContext } */) { const Store = créerStore({ État: { }, Actions: { setLodingMode({commettre}, nouveauMode) { commit("SET_LOADING_MODE", nouveauMode); }, réinitialiserStates({ commit }) { commit("AUTHENTICATION_RESET_STATE"); commit("login/RESET_STATE"); }, }, modules : { connexion, authentification }, plugins : [createPersistedState()], }); retour magasin ; }); 

Le fait est que je souhaite apporter des modifications comme celle-ci

état : { drapeau : faux }, plugins : [ createPersistedState({ stockage : indicateur ? window.localStorage : window.sessionStorage, }), ],≪/pré> 

Je souhaite que l'indicateur change en fonction de la case à cocher "Se souvenir de moi" que l'utilisateur sélectionne lors de la connexion. Ainsi, lorsque l'utilisateur coche la case, l'indicateur devient vrai et toutes les données sont enregistrées dans localStorage

;
P粉295728625
P粉295728625

répondre à tous (1)
P粉658954914

Selon le commentaire de @Estus Flask, j'ai utilisé un stockage personnalisé et géré l'option "se souvenir de moi" en appelant directement localStorage et en définissant un indicateur dans localStorage.

plugins: [ createPersistedState({ paths: ["authentication.userAuthenticationInfo"], storage: { getItem(key) { if (localStorage.getItem("rememberMe") == 1) { return localStorage.getItem(key); } else { return Cookies.get(key); //return sessionStorage.getItem(key); } }, setItem(key, value) { if (localStorage.getItem("rememberMe") == 1) { localStorage.setItem(key, value); } else { Cookies.set(key, value); //sessionStorage.setItem(key, value); } }, removeItem(key) { if (localStorage.getItem("rememberMe") == 1) { localStorage.removeItem(key); } else { Cookies.remove(key); //sessionStorage.removeItem(key); } }, }, }), ],

Et j'efface localStorage à chaque déconnexion ou réponse 401.

    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!