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

Vue中commit和dispatch區(qū)別及用法辨析(最新)

 更新時(shí)間:2024年06月14日 09:59:32   作者:m0_59519985  
在Vue中,commit和dispatch是兩個(gè)用于觸發(fā)Vuex store中的mutations和actions的方法,這篇文章主要介紹了Vue中commit和dispatch區(qū)別及其用法辨析,需要的朋友可以參考下

Vue中commit和dispatch區(qū)別及其用法辨析

在Vue中,commitdispatch是兩個(gè)用于觸發(fā) Vuex store 中的 mutations 和 actions 的方法。

區(qū)別

commit: 用于觸發(fā) mutations,即直接修改 state 的同步操作。通過(guò)commit方法可以調(diào)用 store 中的 mutations,并且只能同步地執(zhí)行。使用方式如下:

this.$store.commit('mutationName', payload);

dispatch: 用于觸發(fā) actions,即執(zhí)行異步操作或者復(fù)雜的邏輯處理。通過(guò)dispatch方法可以調(diào)用 store 中的 actions,并且可以是異步的。使用方式如下:

this.$store.dispatch('actionName', payload);

辨析:

  • 當(dāng)需要修改 state 時(shí),應(yīng)該使用commit來(lái)調(diào)用 mutations
  • 當(dāng)需要進(jìn)行異步操作、例如發(fā)送網(wǎng)絡(luò)請(qǐng)求、多個(gè) mutations 之間有依賴(lài)關(guān)系等情況,應(yīng)該使用dispatch來(lái)調(diào)用 actions。

總結(jié)

commit用于同步操作,主要用來(lái)修改 state;dispatch用于異步操作,主要用來(lái)執(zhí)行一系列的操作,包括觸發(fā)多個(gè) mutations 或者其他一些異步操作。

異步操作:從云端拉取信息后才會(huì)執(zhí)行,放在actions中

同步操作:放在mutations中

擴(kuò)展:前端vuex中dispatch的使用

提示:文章寫(xiě)完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔

前言

Vuex中dispatch的用法!

一、vuex和this.$store.dispatch是什么?

Vuex: Vuex是專(zhuān)為Vue.js應(yīng)用程序開(kāi)發(fā)的狀態(tài)管理模式。它采用集中式存儲(chǔ)管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測(cè)的方式發(fā)生變化。
this.$store.dispatch: this.$store.dispatch是用于觸發(fā)vuex中action的方法。

二、使用方法

#基礎(chǔ)用法
this.$store.dispatch('actionName');

#實(shí)際案例(登錄)

this.$store.dispatch('LoginByUsername', this.loginForm).then(() => {
  this.$router.push({ path: '/' }); //登錄成功之后重定向到首頁(yè)
}).catch(err => {
  this.$message.error(err); //登錄失敗提示錯(cuò)誤
});

action:

LoginByUsername({ commit }, userInfo) {
  const username = userInfo.username.trim()
  return new Promise((resolve, reject) => {
    loginByUsername(username, userInfo.password).then(response => {
      const data = response.data
      Cookies.set('Token', response.data.token) //登錄成功后將token存儲(chǔ)在cookie之中
      commit('SET_TOKEN', data.token)
      resolve()
    }).catch(error => {
      reject(error)
    });
  });
}

總結(jié)

Vuex是專(zhuān)為Vue.js應(yīng)用程序開(kāi)發(fā)的狀態(tài)管理模式。
this.$store.dispatch是用于觸發(fā)vuex中action的方法。

到此這篇關(guān)于Vue中commit和dispatch區(qū)別及其用法辨析的文章就介紹到這了,更多相關(guān)Vue中commit和dispatch內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue實(shí)現(xiàn)打地鼠小游戲

    vue實(shí)現(xiàn)打地鼠小游戲

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)打地鼠小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • Vue3 <Suspense>正確使用指南與注意事項(xiàng)

    Vue3 <Suspense>正確使用指南與注意事項(xiàng)

    本文詳細(xì)介紹了Vue3中<Suspense>組件的使用問(wèn)題及解決方案,包括Promise返回值未正確顯示為字符串和fallback內(nèi)容未顯示的問(wèn)題,并提供了使用defineAsyncComponent和頂層await等方法的解決方案,感興趣的朋友跟隨小編一起看看吧
    2026-01-01
  • vue?echarts實(shí)現(xiàn)航班選座案例分析

    vue?echarts實(shí)現(xiàn)航班選座案例分析

    這篇文章主要介紹了vue?echarts實(shí)現(xiàn)航班選座案例分析,代碼是使用echarts來(lái)實(shí)現(xiàn)的,主要用到的是svg和自定義地圖的相關(guān)知識(shí),需要的朋友可以參考下
    2022-05-05
  • vue3在jsx中使用component組件方式

    vue3在jsx中使用component組件方式

    這篇文章主要介紹了vue3在jsx中使用component組件方式,具有很好的 參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vue教程之toast彈框全局調(diào)用示例詳解

    vue教程之toast彈框全局調(diào)用示例詳解

    這篇文章主要為大家詳細(xì)介紹了vue教程之toast彈框全局調(diào)用示例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • uniapp中app與webview的通訊代碼示例

    uniapp中app與webview的通訊代碼示例

    這篇文章主要給大家介紹了關(guān)于uniapp中app與webview通訊的相關(guān)資料,這里的通信主要是打包APP端和web-view內(nèi)嵌網(wǎng)頁(yè)的雙向通信,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-03-03
  • vue3使用canvas的詳細(xì)指南

    vue3使用canvas的詳細(xì)指南

    這篇文章主要給大家介紹了關(guān)于vue3使用canvas的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用vue3具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2023-04-04
  • Vue組件化編程詳解

    Vue組件化編程詳解

    文章介紹了Vue中組件的基本使用、定義、注冊(cè)、書(shū)寫(xiě)標(biāo)簽和嵌套等關(guān)鍵步驟和注意事項(xiàng),詳細(xì)解釋了組件的配置選項(xiàng)、如何通過(guò)Vue.extend創(chuàng)建組件以及組件實(shí)例對(duì)象與Vue實(shí)例對(duì)象的區(qū)別,還提及了單文件組件的結(jié)構(gòu)和編寫(xiě)邏輯,并強(qiáng)調(diào)了組件原型鏈的重要性
    2025-10-10
  • vue3如何實(shí)現(xiàn)掛載并使用axios

    vue3如何實(shí)現(xiàn)掛載并使用axios

    這篇文章主要介紹了vue3如何實(shí)現(xiàn)掛載并使用axios,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • vue中粘貼板clipboard的使用方法舉例

    vue中粘貼板clipboard的使用方法舉例

    在Web應(yīng)用程序中剪貼板(Clipboard)操作是非常常見(jiàn)的操作之一,這篇文章主要給大家介紹了關(guān)于vue中粘貼板clipboard使用方法的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11

最新評(píng)論

唐海县| 越西县| 喜德县| 通山县| 桑植县| 江达县| 莫力| 临猗县| 和田市| 新邵县| 遵义市| 星子县| 昌黎县| 资源县| 南溪县| 盘锦市| 蒙自县| 将乐县| 金湖县| 江达县| 呼和浩特市| 乌拉特后旗| 迁西县| 胶州市| 吴旗县| 南安市| 芦山县| 鄂托克前旗| 贵阳市| 新竹县| 肇州县| 东明县| 华蓥市| 涿鹿县| 睢宁县| 衡南县| 永德县| 阿拉善盟| 城口县| 本溪| 昔阳县|