91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vuex筆記

發布時間:2020-06-15 17:59:13 來源:網絡 閱讀:380 作者:xxxpjgl 欄目:web開發

1、vuex——數據倉庫,管理的是狀態,是一個專門為vue.js設計的集中式狀態管理架構。
狀態:可以理解為在data中的屬性需要共享給其他vue組件使用的部分,就叫做狀態。簡單的說就是data中需要共用的屬性。
比如:我們有幾個頁面要顯示用戶名稱和用戶等級、或者顯示用戶的地理位置。如果我們不把這些屬性設置為狀態,那每個頁面遇到后,都會到服務器進行查找計算,返回后再顯示。在中大型項目中會有很多共用的數據,所以就有了vuex。

2、vuex小demo之顯示count并且可以進行加減操作
a.首先npm install vuex --save 本地安裝vuex,一定要加上 –save,因為這個包我們在生產環境中是要使用的
b.新建vuex文件夾,里面新建store.js,并且引入vue和vuex
import Vue from 'Vue';
import Vuex from 'Vuex';
Vue.use(Vuex); //注冊使用
c.store.js:新建常量對象count,并且通過
export default new Vuex.Store({
state,
mutations
})導出到外部使用
d.在components文件夾下新建vue模板,在模板中引入store.js文件,import store from '@/Vuex/store'

                <div>
                        <h3>{{msg}}</h3>
                        <p>
                            <button @click="$store.commit('add')">+</button>
                            <button @click="$store.commit('reduce')">-</button>
                        </p>
                        {{$store.state.count}}
                    </div>
                    導出:export default({
                        data(){
                            return msg:'Vuex'
                        },
                        store //注冊
                    })
                    輸出count的值:{{$store.state.count}}
        e.在store.js文件中加入兩個改變state的方法
                count mutations = {
                    add(state){
                        state.count++;
                    },
                    reduce(state){
                        state.count--;
                    }
                }
        這里的mutations是固定的寫法,意思是改變的,我們要改變state的數值的方法,必須寫在mutations里。

3、state
一種狀態對象,共享值
將狀態對象賦值給內部對象,也就是把store.js中的值,賦值到模板中使用(和模板中獲得data的方法類似了)
賦值方式有三種:
a.通過計算屬性
<h4>{{count}}</h4>
computed:{
count(){
return this.$store.state.count;
}
}
b.通過數組操作
首先引入mapState
import {mapState} from 'vuex';
然后計算屬性:
computed:mapState(['count']),
4、Mutations修改狀態(同步)
mutations存在的意義,就是寫方法改變狀態store中的共享值,可傳遞參數,如下圖
count mutations = {
add(state,n){
state.count+=n;
}
}
使用:<button @click="$store.commit('add',10)"></button> //使用方法是用$store.commit(),而不是直接add(),注意了!!!
如果不想在html里面使用$store.commit()這么繁瑣,而是想直接用add(),和methods里面的方法一樣的用法,那么也可以:
首先引入mapMutations
import mapMutations from 'vuex'
然后定義methods
methods:mapMutations(['reduce']),
即可在模板里面使用了: <button @click="reduce()"></button>
5、getters計算過濾操作
getters:相當于store倉庫里的computed,狀態每操作一次,都會經過getters過濾一次,類似一個安檢門,然后返回給用戶
es6 ...操作符,用于將一個數組||類數組||字符串轉為用逗號分隔的參數序列,展開數組
這家伙是用來對數組進行操作的,把數組里面的東西統統拿出來
功能是把數組或類數組對象展開成一系列用逗號隔開的值

6、actions異步修改狀態(異步)

向AI問一下細節
推薦閱讀:
  1. 怎么用vuex
  2. Vuex教程

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

上虞市| 呼和浩特市| 罗定市| 万宁市| 大埔区| 溧阳市| 隆子县| 永宁县| 梧州市| 灵石县| 仁寿县| 苏尼特右旗| 霍林郭勒市| 盐亭县| 根河市| 兴文县| 商洛市| 洞头县| 鄄城县| 紫阳县| 石屏县| 天祝| 阿鲁科尔沁旗| 时尚| 讷河市| 金坛市| 睢宁县| 东阿县| 建德市| 神池县| 印江| 北碚区| 昌宁县| 新津县| 根河市| 礼泉县| 永春县| 星座| 黑河市| 紫阳县| 涞源县|