vue3.0如何使用computed來獲取vuex里數(shù)據(jù)
vue3使用computed獲取vuex里數(shù)據(jù)
不再是vue2.0里什么mapGetter,mapState那些復(fù)雜的獲取方式,
vue3.0里直接使用computed就可以調(diào)用vuex里的數(shù)據(jù)了。喜大普奔。
同時(shí)注意,一點(diǎn),不可以直接使用useStore()方法里的state對象,因?yàn)樵谳敵鰑seStore方法的數(shù)據(jù)中,state是淺灰色的。
淺灰色只可看到,但是不可以直接使用。
如圖:
<template> <div>{{dataList}}</div> </template> <script> import { defineComponent, ref, reactive, toRefs, computed } from "vue"; import { useStore } from 'vuex' // computed 計(jì)算屬性 export default defineComponent({ name: "home", setup(props, ctx) { let store = useStore() // 因?yàn)閟tore里state是淺灰色的,所以不能直接使用,若要使用store.state.dataList需要computed來調(diào)用 console.log(store) let dataList = computed(()=>{ return store.state.dataList }) console.log(dataList) return { store, dataList } }, }); </script> <style scoped lang="scss"> </style>
vue3 簡單使用vuex
mutations用于更變store中的數(shù)據(jù)(同步)
如何調(diào)用mutations中數(shù)據(jù)
vue3中取vuex里的數(shù)據(jù) 需要用 computed獲取
使用store.commit(“add”) 來觸發(fā)vuex里的mutations方法
觸發(fā)mutations時(shí)傳遞參數(shù):store.commit(“addN”,2) 通過第二個(gè)參數(shù)
使用action觸發(fā)某個(gè)mutation
使用dispatch
如何使用getters
getter用于對store中的數(shù)據(jù)進(jìn)行加工處理形成的新的數(shù)據(jù)
不會修改store中的原數(shù)據(jù) 它只起到一個(gè)包裝器的作用 將store中的數(shù)據(jù)變一種形式返回出來
1.getter可以對store中已有的數(shù)據(jù)加工處理之后形成新的數(shù)據(jù),類似vue的計(jì)算屬性
2.store中數(shù)據(jù)發(fā)生改變 getter中的數(shù)據(jù)也會跟著變化
用計(jì)算屬性可以獲取vuex中的getters中的數(shù)據(jù)
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue之?dāng)?shù)據(jù)交互實(shí)例代碼
本篇文章主要介紹了vue之?dāng)?shù)據(jù)交互實(shí)例代碼,vue中也存在像ajax和jsonp的數(shù)據(jù)交互,實(shí)現(xiàn)向服務(wù)器獲取數(shù)據(jù),有興趣的可以了解一下2017-06-06element使用自定義icon圖標(biāo)的詳細(xì)步驟
前端經(jīng)常會用到UI提供的各種圖表,推薦阿里的圖標(biāo)庫,下面這篇文章主要給大家介紹了關(guān)于element使用自定義icon圖標(biāo)的詳細(xì)步驟,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11Vue移動端實(shí)現(xiàn)圖片上傳及超過1M壓縮上傳
這篇文章主要為大家詳細(xì)介紹了Vue移動端實(shí)現(xiàn)圖片上傳及超過1M壓縮上傳,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-12-12Vant Uploader實(shí)現(xiàn)上傳一張或多張圖片組件
這篇文章主要為大家詳細(xì)介紹了Vant Uploader實(shí)現(xiàn)上傳一張或多張圖片組件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09Vue3?封裝擴(kuò)展并簡化Vuex在組件中的調(diào)用問題
這篇文章主要介紹了Vue3?封裝擴(kuò)展并簡化Vuex在組件中的調(diào)用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-01-01創(chuàng)建nuxt.js項(xiàng)目流程圖解
Nuxt.js是創(chuàng)建Universal Vue.js應(yīng)用程序的框架。它的主要范圍是UI渲染,同時(shí)抽象出客戶端/服務(wù)器分布。我們的目標(biāo)是創(chuàng)建一個(gè)足夠靈活的框架,以便您可以將其用作主項(xiàng)目庫或基于Node.js的當(dāng)前項(xiàng)目。2020-03-03使用vue.js2.0 + ElementUI開發(fā)后臺管理系統(tǒng)詳細(xì)教程(二)
這篇文章主要介紹了使用vue.js2.0 + ElementUI開發(fā)后臺管理系統(tǒng)詳細(xì)教程(二),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧2017-01-01