vue視訊教程(對vue有個概覽,要掌握vue-cli的用法,對vue-router,vuex有基本的概念)
https://www.imooc.com/learn/1091
1. vue-cli
vue-cli有多個版本,這裡使用的是vue2.x的版本,不要使用最新版本的,容易踩坑。
https://github.com/vuejs/vue-cli/tree/v2#vue-cli--,這個是老版本的,上面有安裝,模板介紹。
用vue-cli建立一個簡單的專案,就可以來練習vue的基礎知識了,不要自己從頭開始配一個,不適合。
2. vue-router
對vue-router安裝文章中的示例進行操作,熟悉其用法和常用API,引數,一定要操作一遍。
文章如下:
https://www.cnblogs.com/yuyujuan/p/9839705.html
https://segmentfault.com/a/1190000011123089
https://blog.csdn.net/haochangdi123/article/details/80338550
https://segmentfault.com/a/1190000016662929
https://www.cnblogs.com/wisewrong/p/6277262.html
https://www.cnblogs.com/fozero/p/6185492.html
文章建立專案的方式各異,以vue-cli建立的專案為準,不要被文章中亂引入js的方式誤導,一般vue-cli建立的專案,只需要import,不使用script標籤引入,特殊情況下再考慮。
3. vuex
https://www.cnblogs.com/wisewrong/p/6344390.html
https://www.cnblogs.com/dreamsboy/p/6820299.html
https://www.jianshu.com/p/a804606ad8e9
http://www.imooc.com/article/257378?block_id=tuijian_wz
https://www.cnblogs.com/libin-1/p/6518902.html
理解基本概念
store 集中儲存state的地方,一個頁面只有一個store
mutations 同步修改state的方法
getters 從state中計算出的全域性變數,可以在不同模組中使用,且在入參不變時候,計算不會重新執行
actions 非同步修改state的方法,通常是呼叫一個或多個mutations來修改state,例如,一個非同步請求,開始設定loading為true,返回修改真正的state,設定loading為false,會呼叫2或3個mutations
modules 用來劃分state的模組,一個模組通常包括若干相關度高的頁面,這些頁面的狀態可以放在一個modules中,只是用來劃分,讓狀態管理更清晰,方便。寫法上,呼叫時候需要新增module名稱。
掌握基本方法
$store.dispatch 呼叫 Action
$store.commit 呼叫 mutation
其他形式的dispatch和commit都是呼叫$store物件的,自己定義的不是。
狀態對映方法
mapActions 從store中對映Actions,類似於$store.module.actions
mapMutations 從store中對映mutations,類似$store.module.mutations
mapGetters 從store中對映getters,類似於$store.getters.xxxx
mapState 從store中對映state,類似於$store.module.state.xxx
這些方法本質上都是將store中的屬性對映到當前元件中,縮短呼叫路徑,方便使用而已,都是語法糖。
vuex就是不直接修改狀態,而是通過Actions和mutations來修改狀態,繞了一圈而已。