国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Vue router傳遞參數(shù)并解決刷新頁面參數(shù)丟失問題

瀏覽:71日期:2022-10-22 08:06:23

Vue Router 傳參方式:

1. this.$router.push({ name: ’模塊名稱’, params: { // 各參數(shù) } })

router.js:

export default new Router({ routes: [ { path: ’/paramsPassingByRouter’, component: ParamsPassingByRouter, children: [ { path: ’paramsMode’, name: ’paramsMode’, component: ParamsMode } ] } ]})

ParamsPassingByRouter.vue:

<!-- html --><button @click='paramsMode(testData)'>params傳參</button><!-- js --><script>export default { data () { return { testData: { id: ’20180101’, name: ’張三’, aka: ’z3’, age: ’18’ } } }, methods: { paramsMode (data) { this.$router.push({ name: ’paramsMode’, params: data }) } }}</script>

ParamsMode.vue:

<!-- html --><div class='params-mode'>{{ testData }}</div><!-- js --><script>export default { data () { return { testData: {} } }, created () { this.testData = this.$route.params }}</script>

效果:url:http://localhost:8081/#/paramsPassingByRouter/paramsMode頁面顯示:{'id':'20180101','name':'張三','aka':'z3','age':'18'}

但是刷新頁面后,數(shù)據(jù)會(huì)丟失,顯示:{}。

2. this.$router.push({ name: ’模塊名稱’, query: { // 各參數(shù) } })

router.js:

export default new Router({ routes: [ { path: ’/paramsPassingByRouter’, component: ParamsPassingByRouter, children: [ { path: ’queryMode’, name: ’queryMode’, component: QueryMode } ] } ]})

ParamsPassingByRouter.vue:

<!-- html --><button @click='queryMode(testData)'>query傳參</button><!-- js --><script>export default { data () { return { testData: { id: ’20180101’, name: ’張三’, aka: ’z3’, age: ’18’ } } }, methods: { queryMode (data) { this.$router.push({ name: ’paramsMode’, query: data }) } }}</script>

QueryMode.vue:

<!-- html --><div class='query-mode'>{{ testData }}</div><!-- js --><script>export default { data () { return { testData: {} } }, created () { this.testData = this.$route.query }}</script>

效果:url:http://localhost:8081/#/paramsPassingByRouter/queryMode?id=20180101&name=%E5%BC%A0%E4%B8%89&aka=z3&age=18頁面顯示:{'id':'20180101','name':'張三','aka':'z3','age':'18'}

刷新頁面后,數(shù)據(jù)不會(huì)丟失。

解決刷新頁面數(shù)據(jù)丟失的方案:

使用 this.$router.push({ name: ’模塊名稱’, query: { // 各參數(shù) } }) 方式傳參。

缺點(diǎn):參數(shù)值都拼接在 url 上,url 會(huì)很長,同時(shí)都可被看到。

this.$router.push({ name: ’模塊名稱’, params: { // 各參數(shù) } }) 路由文件設(shè)置的時(shí)候把參數(shù)拼到 url 里。

url:http://localhost:8081/#/paramsPassingByRouter/paramsMode/20180101/%E5%BC%A0%E4%B8%89/z3/18缺點(diǎn):同上。

1 和 2 結(jié)合使用:this.$router.push({ name: ’模塊名稱’, params: { // 各參數(shù) }, query: { // 各參數(shù) } })。

老老實(shí)實(shí)的用 localStorage 存儲(chǔ)。

url: http://localhost:8081/#/paramsPassingByRouter/paramsMode/z3可以與 params 和 query 方式配合使用,可以暴露的參數(shù)顯示在 url 上,同時(shí)刷新參數(shù)也不會(huì)丟失。銷毀頁面的時(shí)候把 localStorage 存儲(chǔ)的內(nèi)容清除。

// router.js{ path: ’paramsMode/:aka’, name: ’paramsMode’, component: ParamsMode}<!-- ParamsMode.vue 修改 --><script>export default { data () { return { testData: {} } }, created () { const tempData = localStorage.getItem(’tempData’) if (tempData) { this.testData = JSON.parse(tempData) } else { this.testData = this.$route.params localStorage.setItem(’tempData’, JSON.stringify(this.$route.params)) } }, beforeDestroy () { localStorage.removeItem(’tempData’) }}</script>

到此這篇關(guān)于Vue router傳遞參數(shù)并解決刷新頁面參數(shù)丟失問題的文章就介紹到這了,更多相關(guān)Vue router傳遞參數(shù)丟失內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 在线精品免费观看综合 | 国产高清天干天天视频 | 国产精亚洲视频 | 波多野结衣一区二区三区在线观看 | 成年午夜一级毛片视频 | 亚洲成人国产 | 亚洲欧美日韩综合一区久久 | 成 人 黄 色 视频播放16 | 国产成人精品综合网站 | 亚洲欧美日韩在线不卡中文 | 伊人久久精品午夜 | 精品国产综合成人亚洲区 | 一本色道久久综合 | 欧美成人三级伦在线观看 | 久久99久久精品国产99热 | 丝袜足液精子免费视频 | 老人久久www免费人成看片 | 国产成人毛片毛片久久网 | 国产一级做a爰片在线看免费 | 成人免费午间影院在线观看 | 精品视频免费在线观看 | 草草视频在线观看 | 在线免费观看欧美 | 欧美毛片大全 | 91精品专区 | 成人福利网站在线看视频 | 亚洲欧美精品网站在线观看 | 手机看片久久高清国产日韩 | 日日狠狠久久偷偷四色综合免费 | 亚洲成在人线中文字幕 | 国产大片线上免费看 | 九九视频在线免费观看 | 最新亚洲人成网站在线影院 | 亚洲视屏在线观看 | 国产精品99| 日韩 国产 欧美 | 欧美一级欧美三级 | 九九草在线观看 | 国内成人精品视频 | 亚洲精品一 | 香港激情黄三级在线视频 |