<strike id="g3zqm"></strike>

      <cite id="g3zqm"></cite>

        <tr id="g3zqm"><center id="g3zqm"></center></tr>
        <pre id="g3zqm"><sup id="g3zqm"></sup></pre>
        <li id="g3zqm"></li>
      1. 少妇高潮激情一区二区三,免费av深夜在线观看,亚洲狼人久久伊人久久伊,久久精品人人做人人爽电影蜜月,黄色特级片一区二区三区,欧美日韩在线亚洲二区综二,极品少妇无套内射视频,日本极品少妇videossexhd

        關于Vuex的全家桶狀態管理(二)

        2018-5-28    seo達人

        如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

        1:mutations觸發狀態 (同步狀態)

        <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>
            
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        • 16
        • 17
        • 18
        • 19
        • 20
        • 21
        • 22
        • 23
        • 24
        • 25
        • 26

        2:getters計算屬性

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

        在store.js添加getters

         // 計算 const getters = {
          count(state){ return state.count + 66 }
        } export default new Vuex.Store({
          state,
          mutations,
          getters
        })
            
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13

        //count的參數就是上面定義的state對象 
        //getters中定義的方法名稱和組件中使用的時候一定是一致的,定義的是count方法,使用的時候也用count,保持一致。 
        組件中使用

        <script> import {mapState,mapMutations,mapGetters} from 'vuex' export default{
          name:'hello',
          computed: {
           ...mapState([ 'count' ]),
           ...mapGetters([ 'count' ])
          },
          methods:{
           ...mapMutations([ 'jia', 'jian' ])
          }
         } </script>
            
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        • 16
        • 17
        • 18
        • 19
        • 20

        3:actions (異步狀態)

        在store.js添加actions

        import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) // 定義常量 const state = { count: 1 } // mutations用來改變store狀態 同步狀態 const mutations = {
          jia(state){
            state.count ++
          },
          jian(state){
            state.count --
          },
        } // 計算屬性 const getters = {
          count(state){ return state.count + 66 }
        } // 異步狀態 const actions = {
          jiaplus(context){
            context.commit('jia') //調用mutations下面的方法
            setTimeout(()=>{
              context.commit('jian')
            },2000) alert('我先被執行了,然后兩秒后調用jian的方法') }, jianplus(context){ context.commit('jian') }
        } export default new Vuex.Store({
          state,
          mutations,
          getters,
          actions
        })
            
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        • 16
        • 17
        • 18
        • 19
        • 20
        • 21
        • 22
        • 23
        • 24
        • 25
        • 26
        • 27
        • 28
        • 29
        • 30
        • 31
        • 32
        • 33
        • 34
        • 35
        • 36
        • 37
        • 38
        • 39
        • 40
        • 41
        • 42
        • 43
        • 44

        在組件中使用

        <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:{ // 這里是數組的方式觸發方法 ...mapMutations([ 'jia', 'jian' ]), // 換一中方式觸發方法 用對象的方式 ...mapActions({
            jiaplus: 'jiaplus',
            jianplus: 'jianplus' })
          }
         } </script> <style scoped> h5{ font-size: 20px; color: red; } </style>
            
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        • 16
        • 17
        • 18
        • 19
        • 20
        • 21
        • 22
        • 23
        • 24
        • 25
        • 26
        • 27
        • 28
        • 29
        • 30
        • 31
        • 32
        • 33
        • 34
        • 35
        • 36
        • 37
        • 38
        • 39
        • 40
        • 41
        • 42
        • 43
        • 44
        • 45
        • 46
        • 47
        • 48

        4:modules 模塊

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

        修改store.js

        import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) const state = { count: 1 } const mutations = {
          jia(state){
            state.count ++
          },
          jian(state){
            state.count --
          },
        } const getters = {
          count(state){ return state.count + 66 }
        } const actions = {
          jiaplus(context){
            context.commit('jia') //調用mutations下面的方法
            setTimeout(()=>{
              context.commit('jian')
            },2000) alert('我先被執行了,然后兩秒后調用jian的方法') }, jianplus(context){ context.commit('jian') }
        }
        
        //module使用模塊組的方式 moduleA const moduleA = { state, mutations, getters, actions }
        
        // 模塊B moduleB const moduleB = { state: { count:108
          }
        } export default new Vuex.Store({
          modules: {
            a: moduleA,
            b: moduleB,
          }
        })
        藍藍設計m.hengshangtqd.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

        日歷

        鏈接

        個人資料

        藍藍設計的小編 http://m.hengshangtqd.cn

        存檔

        主站蜘蛛池模板: 黄视频网站免费观看| 国产成人最新三级在线视频| 无码国产偷倩在线播放老年人 | 久久久久久久综合综合狠狠| 熟女熟妇伦av网站| 丰满人妻熟妇乱又精品视| 中文字幕一级A片免费看| 不卡av电影在线| 亚非秘?一区二区三区四区| 亚洲欧洲日韩av综合| 99热这里有精品| 亚洲乱熟乱熟女一区二区| 亚洲色图第一页| 91精品国产丝袜在线国语| 国产精品1024永久观看| 国产精品电影久久久久电影网 | 天堂www在线中文| 免费a级在线观看播放| 伊人蕉久影院| 91中文字幕在线一区| 欧美2区| 日本五区在线不卡精品| 被黑人伦流澡到高潮HNP动漫| 亚洲精品日韩久久精品| 377人体粉嫩噜噜噜| 国产精品国产三级国产an| 老司机午夜精品视频你懂的| 自拍亚洲一区欧美另类| 国产剧情91精品蜜臀一区| 无码精品人妻一区二区三区中| 日韩人妻系列无码专区| 日韩精品人妻第一页| 人人做人人爽国产视| 丰满人妻一区二区三区高清精品| 亚洲区福利视频免费看| 久久久久久99av无码免费网站| 中文亚洲字幕| 国产麻豆一精品一av一免费| 麻豆av色| 国产精品自在拍99| 人人妻人人澡人人爽精品欧美|