Can I keep Livewire wizard if user refresh page?

Viewed 381

I make wizard with Livewire, when clicking on “Next” button entered data are validated and kept under component variables. But if user refresh page with CTRL+R all data submitted on prior steps are lost. If there is a way to keep these data ?

I had similar issue in vuejs/vuex app several years ago and as my client insisted that it must be fixed I found a decision with local storage, like :

export default new Vuex.Store({
    state: {// store data
        avatar_url: '',
    }, // state: { // store data

    getters: {

        avatar_url(state) {
            if (state.avatar_url.length > 0) {
                return state.avatar_url
            }
            let avatar_url = localStorage.getItem('avatar_url')
            if (avatar_url != null && typeof avatar_url === 'string') {
                if (avatar_url.length > 0) {
                    return avatar_url
                }
            }
            return ''
        }, // avatar_url(state) {


    mutations: { // methods to make changes to vuex store
        auth_success(state, data) {
            state.status = 'success'
            state.token = data.token
            localStorage.setItem("token", data.token)

            if (typeof data.avatar_url != 'undefined') {
                state.avatar_url = data.avatar_url
                localStorage.setItem("avatar_url", data.avatar_url)
            }

            state.user = data.user
            localStorage.setItem("user", JSON.stringify(data.user))
        },

and it worked for me.

Has Livewire similar extentions/decison ?

Thanks in advance!

0 Answers
Related