最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue頁面如何及時更新頁面數(shù)據(jù)問題

 更新時間:2023年05月24日 14:56:49   作者:Greg_Zhong  
這篇文章主要介紹了vue頁面如何及時更新頁面數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

vue頁面如何及時更新頁面數(shù)據(jù)

什么是Vue單頁面

代碼層面,可以將一個頁面HTML、JS、CSS代碼統(tǒng)一寫在一個 .Vue文件里。

頁面展示:通過控制當(dāng)前頁面路徑#號后面的路由名稱,來達到控制(切換)不同頁面的展示效果,請記?。哼@樣顯隱方式~頁面不會重新請求api。

補充:(凡事有利也有弊)對于頁面不需要二次刷新來說,不重新請求api,節(jié)約服務(wù)器資源,用戶在界面上體驗度好,但是,如果某個單頁面需要二次加載(及時更新數(shù)據(jù)~比如:增刪修改后),此時頁面不會重新請求api!(為什么?在看一遍我前面的文字概述!)

vue頁面為什么~需要重新渲染頁面數(shù)據(jù)?

vue中,我們一般將請求方法,放在mounted( )中,但是只有第一次頁面加載會觸發(fā)mounted(),而后續(xù)是不會觸發(fā)這個生命周期函數(shù)的!,若此時你做完增刪修操作,數(shù)據(jù)怎么更新,怎么辦?

如何讓單頁面二次(后續(xù))訪問頁面,數(shù)據(jù)渲染(更新)

使用頁面的watch偵聽事件,監(jiān)控路由發(fā)生改變,則請求需要更新數(shù)據(jù)的方法(函數(shù)),如下圖:這里更新數(shù)據(jù)的方法是querySalaryList()。 

如圖:1 和 2 前者,就是監(jiān)聽路由發(fā)生改變,就觸發(fā)!導(dǎo)致其他頁面也會受到影響,(我第一次使用時,用的就是1方式,導(dǎo)致我請求里的彈框,在跳轉(zhuǎn)其他頁面都出現(xiàn),這是非常不好的?。。。┰趺崔k,就使用 2 方式,當(dāng)獲取路由是特定路由,才觸發(fā)事件…

vue A頁面更新B頁面數(shù)據(jù)

應(yīng)用場景:全局定時刷新訂單狀態(tài),等有待處理訂單時,進行彈框提示,同時如果在訂單列表的話,也有待處理訂單狀態(tài),進行列表數(shù)據(jù)更新。

通過vuex 獲取被更新頁面的this實例化實現(xiàn)

store/modules新建個文件,我這里命名為:updateOrderList.js (獲取指定頁面的this實例化對象)
const state = function() {
? return {
? ? pageThis: '', // 組件實例
? ? pagePaths: ['/canteen/orderManage/list'], // 需要更新數(shù)據(jù)的組件路徑
? ? timerTime: 1000 * 30,
? ? timerAction: null // 定時器
? }
}
const mutations = {
? // 更新pageThis
? updateThisMutation(state, that) {
? ? console.log(state)
? ? state.pageThis = that
? }
}
const actions = {
? // 獲取組件this
? getComponentThisAction(context, that) {
? ? const path = that.$route.path
? ? const pagePaths = context.state.pagePaths
? ? if (pagePaths.includes(path)) {
? ? ? context.commit('updateThisMutation', that)
? ? ? if (context.state.timerAction) {
? ? ? ? return
? ? ? }
? ? }
? }
}
export default {
? namespaced: true,
? state: state,
? mutations: mutations,
? actions: actions
}

2.store/index.js下引入該文件:

import updateOrderList from './modules/updateOrderList'
const store = new Vuex.Store({
?? ?updateOrderList
})

3.在需要更新的頁面進行vuex方法引用(我這邊定義為orderManage.vue文件):

import { mapActions } from 'vuex'
mounted() {
? this.getComponentThisAction(this) // 調(diào)用vuex方法用于獲取實例化
},
beforeDestroy() {
? ? this.getComponentThisAction('') // 離開頁面時銷毀實例化
},
methods: {
? ? ...mapActions('updateOrderList', ['getComponentThisAction'])
})

4.在需要點擊更新的地方進調(diào)用(我這邊放在了側(cè)邊欄)

import store from '@/store'
mounted() {
?? ?this.loadNewOrderData()
},
methods: {
? loadNewOrderData() {
? ? setTimeout(() => {
? ? ? this.$message({
? ? ? ? message: '數(shù)據(jù)更新了'
? ? ? })
? ? ? const pageThis = store.state.updateOrderList.pageThis
? ? ? if (pageThis && pageThis.$route.path === '/canteen/orderManage/list') {
? ? ? ? pageThis.getOrderList(pageThis.currentPage)
? ? ? }
? ? ? this.loadNewOrderData()
? ? }, 5000)
? }
}

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue中的v-for指令不起效果的解決方法

    Vue中的v-for指令不起效果的解決方法

    今天小編就為大家分享一篇Vue中的v-for指令不起效果的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • 在vue中使用Echarts畫曲線圖的示例

    在vue中使用Echarts畫曲線圖的示例

    這篇文章主要介紹了在vue中使用Echarts畫曲線圖的示例,幫助大家在vue中繪制圖表,感興趣的朋友可以了解下
    2020-10-10
  • vue里input根據(jù)value改變背景色的實例

    vue里input根據(jù)value改變背景色的實例

    今天小編就為大家分享一篇vue里input根據(jù)value改變背景色的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • 前端vue中使用signalr的方法舉例詳解

    前端vue中使用signalr的方法舉例詳解

    在現(xiàn)代Web應(yīng)用程序中,即時通訊功能已成為不可或缺的一部分,下面這篇文章主要介紹了前端vue中使用signalr的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-07-07
  • Vue不能下載xls以及文件亂碼問題解決

    Vue不能下載xls以及文件亂碼問題解決

    最近工作中遇到了一些問題,通過查找相關(guān)資料終于找到了相關(guān)的解決方法,這篇文章主要給大家介紹了關(guān)于Vue不能下載xls以及文件亂碼問題解決的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • vue遞歸實現(xiàn)樹形組件

    vue遞歸實現(xiàn)樹形組件

    這篇文章主要為大家詳細介紹了vue遞歸實現(xiàn)樹形組件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • vue.js實現(xiàn)仿原生ios時間選擇組件實例代碼

    vue.js實現(xiàn)仿原生ios時間選擇組件實例代碼

    本篇文章主要介紹了vue.js實現(xiàn)仿原生ios時間選擇組件實例代碼,具有一定的參考價值,有興趣的可以了解一下。
    2016-12-12
  • 從前端Vue到后端Java防重復(fù)提交的全面解決方案

    從前端Vue到后端Java防重復(fù)提交的全面解決方案

    這篇文章主要給大家介紹了關(guān)于從前端Vue到后端Java防重復(fù)提交的全面解決方案,通過示例講解了包括禁用提交按鈕、表單令牌、防抖與節(jié)流等前端技術(shù),以及表單令牌驗證、數(shù)據(jù)庫唯一約束、事務(wù)隔離與鎖機制等后端技術(shù),需要的朋友可以參考下
    2025-05-05
  • vue el-upload 上傳文件格式校驗方法

    vue el-upload 上傳文件格式校驗方法

    這篇文章主要介紹了vue el-upload 上傳文件格式校驗方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-11-11
  • 淺談vue的生命周期

    淺談vue的生命周期

    這篇文章主要為大家介紹了vue的生命周期,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評論

毕节市| 旬阳县| 东阿县| 碌曲县| 汉阴县| 博客| 永和县| 锡林郭勒盟| 嵊泗县| 温宿县| 正蓝旗| 清丰县| 中卫市| 开远市| 弥渡县| 苏尼特左旗| 双江| 手机| 岳普湖县| 枣强县| 尉犁县| 敦煌市| 突泉县| 体育| 师宗县| 大姚县| 建阳市| 靖宇县| 柯坪县| 光山县| 滕州市| 元朗区| 仁化县| 广灵县| 巴南区| 蓝山县| 新蔡县| 刚察县| 临安市| 江达县| 青川县|