一、安裝vuex
安裝完后發現多了store.js文件
store.js相當於倉庫,會把所有的數據寫在state中
二、安裝好后重新運行
三、在學員展示頁面添加功能
1)在Student.vue中引入兩個組件
2)在component中添加這兩個組件
3)把兩個組件里面的內容寫好
4)在student.vue中使用組件
顯示結果:
四、獲取store中的數據
可以通過$store獲取
數據池中:
studentList中:
給button添加點擊事件改變名字時,發現添加學生名字沒變
原因是data中name被固定了,$store.state.name改變了data中的name也不改變,所以這時可以用計算屬性computed,使數據更新
數據都可以改變了
五、如果store中數據增加
使用此方法可以改變數據,但是如果數據池中的數據多,則用這種方法不方便
所以vuex中提供方法可以拿到store中的很多數據 —> mapState (直接返回對象,對象里是一個一個的函數)
是對象,對象里是一個一個的函數,跟computed很像
mapState可以直接放在computed里
但如果自己的data里有name屬性,上面就會渲染自己的,為避免沖突,mapStata中的name可以改變名字
上面渲染改名字:
六、實現添加列表的功能
1)首先要知道input里輸入的數據是什么,所以雙向數據綁定
2)在數據中設置name和age
3)點擊button時需要知道輸入框里的值是什么
4)更改store中的數據
5)把3)中name的值和age的值放到對象中,再把對象放到數組中
6)渲染列表用for循環,for循環需要key值,這里用時間戳當key值
7)改變列表的值
8)更改studentList組件