• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    關(guān)于Vuex的全家桶狀態(tài)管理

    來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 20:08:38
    文檔

    關(guān)于Vuex的全家桶狀態(tài)管理

    關(guān)于Vuex的全家桶狀態(tài)管理:Vuex 是一個專為 Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式。它采用集中式存儲管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測的方式發(fā)生變化。Vuex 也集成到 Vue 的官方調(diào)試工具 devtools extension,提供了諸如零配置的 time-travel
    推薦度:
    導(dǎo)讀關(guān)于Vuex的全家桶狀態(tài)管理:Vuex 是一個專為 Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式。它采用集中式存儲管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測的方式發(fā)生變化。Vuex 也集成到 Vue 的官方調(diào)試工具 devtools extension,提供了諸如零配置的 time-travel
    Vuex 是一個專為 Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式。它采用集中式存儲管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測的方式發(fā)生變化。Vuex 也集成到 Vue 的官方調(diào)試工具 devtools extension,提供了諸如零配置的 time-travel 調(diào)試、狀態(tài)快照導(dǎo)入導(dǎo)出等高級調(diào)試功能。本文主要介紹了淺談Vuex狀態(tài)管理(全家桶),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望能幫助到大家。

    以上是vuex的官方文檔對vuex的介紹,官方文檔對vuex的用法進行了詳細的說明。這里就不再細講vuex的各個用法,寫這篇博客的目的只是幫助部分同學(xué)更快地理解并上手vuex。

    1. 安裝

    $ npm install vuex --save

    2. 在main.js 主入口js里面引用store.js

    3. 在store.js里引用Vuex

    4. 在vue組件中使用

    使用$store.commit('jia')區(qū)觸發(fā)mutations下面的加減方法

    <template>
     <p class="hello">
     <h1>Hello Vuex</h1>
     <h5>{{$store.state.count}}</h5>
     <p>
     <button @click="$store.commit('jia')">+</button>
     <button @click="$store.commit('jian')">-</button>
     </p>
     </p>
    </template>
    
    <!-- 加上scoped是css只在這個組件里面生效,為了不影響全局樣式 -->
    <style scoped>
     h5{
     font-size: 20px;
     color: red;
     }
    </style>

    5. 查看演示

    6. state訪問狀態(tài)對象

    使用computed計算

    <template>
     <p class="hello">
     <h1>Hello Vuex</h1>
     <h5>{{count}}</h5>
     <p>
     <button @click="$store.commit('jia')">+</button>
     <button @click="$store.commit('jian')">-</button>
     </p>
     </p>
    </template>
    
    <script>
    import {mapState} from 'vuex'
    export default{
     name:'hello', //寫上name的作用是,如果你頁面報錯了,他會提示你是那個頁面報的錯,很實用
     // 方法一
     // computed: {
     // count(){
     // return this.$store.state.count + 6
     // }
     // }
     
     // 方法二 需要引入外部 mapState
     computed:mapState({
     count:state => state.count + 10
     })
     
     // ECMA5用法
     // computed:mapState({
     // count:function(state){
     // return state.count
     // }
     // })
     
     //方法三
     // computed: mapState([
     // 'count'
     // ])
     }
    </script>

    7. mutations觸發(fā)狀態(tài) (同步狀態(tài))

    <template>
     <p class="hello">
     <h1>Hello Vuex</h1>
     <h5>{{count}}</h5>
     <p>
     <button @click="jia">+</button>
     <button @click="jian">-</button>
     </p>
     </p>
    </template>
    <script>
    import {mapState,mapMutations} from 'vuex'
     export default{
     name:'hello', //寫上name的作用是,如果你頁面報錯了,他會提示你是那個頁面報的錯,很實用
     //方法三
     computed: mapState([
     'count'
     ]),
     methods:{
     ...mapMutations([
     'jia',
     'jian'
     ])
     }
     }
    </script>

    8. getters計算屬性

    getter不能使用箭頭函數(shù),會改變this的指向

    在store.js添加getters

    9. actions (異步狀態(tài))

    在store.js添加actions

    在組件中使用

    <template>
     <p class="hello">
     <h1>Hello Vuex</h1>
     <h5>{{count}}</h5>
     <p>
     <button @click="jia">+</button>
     <button @click="jian">-</button>
     </p>
     <p>
     <button @click="jiaplus">+plus</button>
     <button @click="jianplus">-plus</button>
     </p>
     </p>
    </template>
    <script>
     import {mapState,mapMutations,mapGetters,mapActions} from 'vuex'
     export default{
     name:'hello',
     computed: {
     ...mapState([
     'count'
     ]),
     ...mapGetters([
     'count'
     ])
     },
     methods:{
     // 這里是數(shù)組的方式觸發(fā)方法
     ...mapMutations([
     'jia',
     'jian'
     ]),
     // 換一中方式觸發(fā)方法 用對象的方式
     ...mapActions({
     jiaplus: 'jiaplus',
     jianplus: 'jianplus'
     })
     }
     }
    </script>
    
    <style scoped>
     h5{
     font-size: 20px;
     color: red;
     }
    </style>

    10. modules 模塊

    適用于非常大的項目,且狀態(tài)很多的情況下使用,便于管理

    修改store.js

    聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    關(guān)于Vuex的全家桶狀態(tài)管理

    關(guān)于Vuex的全家桶狀態(tài)管理:Vuex 是一個專為 Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式。它采用集中式存儲管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測的方式發(fā)生變化。Vuex 也集成到 Vue 的官方調(diào)試工具 devtools extension,提供了諸如零配置的 time-travel
    推薦度:
    標簽: VUE 狀態(tài) 管理
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 精品无码国产污污污免费网站 | 欧美精品在线免费| 少妇人妻无码精品视频app| 国产99视频精品专区| 国产成人久久精品区一区二区| 最新精品露脸国产在线 | 精品人妻码一区二区三区| 欧美精品整片300页| 国产在线91精品入口| 99在线观看视频免费精品9| 国产91大片精品一区在线观看| 久久亚洲私人国产精品| 亚洲午夜成人精品电影在线观看 | 91精品国产高清久久久久久国产嫩草 | 亚洲成人国产精品| 久久国产精品二国产精品| 国产精品一区12p| 国产成人精品一区在线| 99riav国产精品| 国产成人综合久久精品尤物| 日韩精品在线看| 欧美国产日韩精品| 亚洲一区精品中文字幕| 四虎精品影院4hutv四虎| segui久久国产精品| 91精品免费久久久久久久久| 午夜精品福利视频| 91麻精品国产91久久久久| 色播精品免费小视频| 97国产视频精品| 国产精品人人做人人爽人人添| 国产精品理论片在线观看| 国产精品无码不卡一区二区三区| 国产精品偷窥熟女精品视频| 国精品无码A区一区二区| 久久国产精品一区| 日本熟妇亚洲欧美精品区 | 久久久久这里只有精品| 日韩精品毛片| 亚洲av无码国产精品夜色午夜| 日韩精品无码一区二区三区|