国产69囗曝吞精在线视频,肥臀浪妇太爽了快点再快点,亚洲欧洲成人a∨在线观看,狠狠色丁香久久综合 ,国精一二二产品无人区免费应用,亚洲精品久久久久中文字幕,四虎一区二区成人免费影院网址 ,无码三级中文字幕在线观看

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

      2018-5-28    seo達(dá)人

      如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

      1: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', //寫(xiě)上name的作用是,如果你頁(yè)面報(bào)錯(cuò)了,他會(huì)提示你是那個(gè)頁(yè)面報(bào)的錯(cuò),很實(shí)用 //方法三 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計(jì)算屬性

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

      在store.js添加getters

       // 計(jì)算 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的參數(shù)就是上面定義的state對(duì)象 
      //getters中定義的方法名稱(chēng)和組件中使用的時(shí)候一定是一致的,定義的是count方法,使用的時(shí)候也用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 (異步狀態(tài))

      在store.js添加actions

      import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) // 定義常量 const state = { count: 1 } // mutations用來(lái)改變store狀態(tài) 同步狀態(tài) const mutations = {
        jia(state){
          state.count ++
        },
        jian(state){
          state.count --
        },
      } // 計(jì)算屬性 const getters = {
        count(state){ return state.count + 66 }
      } // 異步狀態(tài) const actions = {
        jiaplus(context){
          context.commit('jia') //調(diào)用mutations下面的方法
          setTimeout(()=>{
            context.commit('jian')
          },2000) alert('我先被執(zhí)行了,然后兩秒后調(diào)用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:{ // 這里是數(shù)組的方式觸發(fā)方法 ...mapMutations([ 'jia', 'jian' ]), // 換一中方式觸發(fā)方法 用對(duì)象的方式 ...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 模塊

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

      修改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') //調(diào)用mutations下面的方法
          setTimeout(()=>{
            context.commit('jian')
          },2000) alert('我先被執(zhí)行了,然后兩秒后調(diào)用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,
        }
      })
      藍(lán)藍(lán)設(shè)計(jì)m.izc.net.cn )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 平面設(shè)計(jì)服務(wù)

      日歷

      鏈接

      個(gè)人資料

      存檔

      主站蜘蛛池模板: 性做无码视频在线观看| 变态另类丨国产精品| 蜜桃无码一区二区三区| 国内野外强奷在线视频| 日本男人的天堂| 爽爽窝窝午夜精品一区二区| 牛鞭伸入女人下身的真视频| 男女啪啪猛烈免费网站| 久久久美女视频| 波多野结衣网站| 久久综合97丁香色香蕉| 天堂网中文字幕| 一区二区三区四区免费| 推油少妇久久99久久99久久| 亚洲男人第一无码av网| 麻豆成人免费视频| av免费大片| 亚洲无av在线中文字幕| 成人国产精品一区二区免费看 | 性动态图av无码专区| 免费av大片| av日韩中文字幕| 亚洲精品无码专区| 伊人热热久久原色播放www| 日本黄色三级| 日日夜夜免费| 精品产品福利| 婷婷色婷婷深深爱播五月| 亚洲码无人客一区二区三区| 欧美日韩一二| 久久精品国产99国产精品严洲| 九九热在线视频观看这里只有精品| 色七七桃花综合影院| 国产老熟女伦老熟妇露脸| 中文字幕无码精品亚洲资源网| 超碰在线视屏| www日韩精品| 人人妻人人妻人人人人妻| 3d全彩无码啪啪本子全彩| 日本va欧美va精品发布| 中文字幕亚洲专区|