我正在開發一個Nuxtjs應用程式,其中有一個表單,用戶填寫了資訊并提交了表單。提交后,用戶被導航到一個不同的route。現在,如果用戶點擊瀏覽器的回傳按鈕,那么用戶又導航到了表單,但是欄位中的資料被重置了。
我想確保當用戶點擊瀏覽器的回傳按鈕時,由用戶填寫的資料將被保留。我試著搜索,發現我們需要使用autocomplete=on,我試過了,但它對我不起作用。誰能幫幫我,當用戶導航回到route時,我怎樣才能保留用戶提供的資訊呢。
<template>
< div id="eventForm" class="row" style="margin-top: 1%">
< form ref="testDataForm" class="form-horizontal" autocomplete="on" @submit. prevent="formSubmit">。
<input。
v-model="formData.eventCount"
type="number"
class="form-control"/span>
required
>
<b-form-select v-model="formData。 optionsSelector" class="form-control">。
< b-form-select-option value="null" disabled selected>
選擇
</b-form-select-option>/span>選擇
<b-form-select-option value="value1">/span>
文本1
</b-form-select-option>
<b-form-select-option value="value2"/span>>
文本2
</b-form-select-option> Text2
</b-form-select>/span>
< button type="submit" class="btn btn-success">
遞交
</button> 提交
</form>/span>
</div>/span>
</template>
<script>
export default {
資料() {
return {
formData: {
optionsSelector: null: optionsSelector: null
}
}
},
methods: {
formSubmit () {
this.$router.push('/GenerateTestData'/span>)
// this.$router.push({ path: '/GenerateTestData' })/span>
}
}
}
</script>>
<style>
</style>
uj5u.com熱心網友回復:
你需要以某種方式持久化你的資料。要么通過再次獲取狀態(formData.optionsSelector),要么通過將其存盤在cookie/localStorage/else中。
https://stackoverflow.com/a/66872372/8816585
因此,如果你想在回來時擁有它,你需要有一個狀態的獲取器,而不是讓它在組件被安裝時默認為null。
一個computed Vuex的組合也可能是一種方法。
uj5u.com熱心網友回復:
你應該使用 "keep-alive "來保持渲染的元素。如果你使用nuxt.js,在你的default.vue檔案中添加這個。 https://nuxtjs.org/docs/2.x/features/nuxt-components
<template>
<v-app dark>
<v-main>/span>
< v-container class="ma-0 pa- 0" id="appContainer" fluid>
<nuxt keep-alive/>
</v-container>/span>
</v-main>/span>
</v-app>/span>
</template>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/309052.html
標籤:
上一篇:2020軟考架構設計師真題
