最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue中g(shù)etters的使用與四個(gè)map方法的使用方式

 更新時(shí)間:2024年01月22日 10:42:01   作者:小付學(xué)代碼  
這篇文章主要介紹了vue中g(shù)etters的使用與四個(gè)map方法的使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

getters方法的使用

### getters的使用
 
1. 概念:當(dāng)state中的數(shù)據(jù)需要經(jīng)過加工后再使用時(shí),可以使用getters加工。
 
2. 在```store.js```中追加```getters```配置
 
   ```js
   ......
   
   const getters = {
   	bigSum(state){
   		return state.sum * 10
   	}
   }
   
   //創(chuàng)建并暴露store
   export default new Vuex.Store({
   	......
   	getters
   })
   ```
 
3. 組件中讀取數(shù)據(jù):```$store.getters.bigSum```

四個(gè)map方法的使用

### 四個(gè)map方法的使用
 
1. <strong>mapState方法:</strong>用于幫助我們映射```state```中的數(shù)據(jù)為計(jì)算屬性
 
   ```js
   computed: {
       //借助mapState生成計(jì)算屬性:sum、school、subject(對(duì)象寫法)
        ...mapState({sum:'sum',school:'school',subject:'subject'}),
            
       //借助mapState生成計(jì)算屬性:sum、school、subject(數(shù)組寫法)
       ...mapState(['sum','school','subject']),
   },
   ```
 
2. <strong>mapGetters方法:</strong>用于幫助我們映射```getters```中的數(shù)據(jù)為計(jì)算屬性
 
   ```js
   computed: {
       //借助mapGetters生成計(jì)算屬性:bigSum(對(duì)象寫法)
       ...mapGetters({bigSum:'bigSum'}),
   
       //借助mapGetters生成計(jì)算屬性:bigSum(數(shù)組寫法)
       ...mapGetters(['bigSum'])
   },
   ```
 
3. <strong>mapActions方法:</strong>用于幫助我們生成與```actions```對(duì)話的方法,即:包含```$store.dispatch(xxx)```的函數(shù)
 
   ```js
   methods:{
       //靠mapActions生成:incrementOdd、incrementWait(對(duì)象形式)
       ...mapActions({incrementOdd:'jiaOdd',incrementWait:'jiaWait'})
   
       //靠mapActions生成:incrementOdd、incrementWait(數(shù)組形式)
       ...mapActions(['jiaOdd','jiaWait'])
   }
   ```
 
4. <strong>mapMutations方法:</strong>用于幫助我們生成與```mutations```對(duì)話的方法,即:包含```$store.commit(xxx)```的函數(shù)
 
   ```js
   methods:{
       //靠mapActions生成:increment、decrement(對(duì)象形式)
       ...mapMutations({increment:'JIA',decrement:'JIAN'}),
       
       //靠mapMutations生成:JIA、JIAN(對(duì)象形式)
       ...mapMutations(['JIA','JIAN']),
   }
   ```
 
> 備注:mapActions與mapMutations使用時(shí),若需要傳遞參數(shù)需要:在模板中綁定事件時(shí)傳遞好參數(shù),否則參數(shù)是事件對(duì)象。

承接上一篇的Count.vue,更改插值語法中的{{$store.state.sum}}下邊用計(jì)算屬性來做更改。

<template>
	<div>
		<h1>當(dāng)前求和為:{{sum}}</h1>
		<h3>當(dāng)前求和放大10倍為:{{bigSum}}</h3>
		<h3>我在{{school}},學(xué)習(xí){{subject}}</h3>
		<select v-model.number="n">
			<option value="1">1</option>
			<option value="2">2</option>
			<option value="3">3</option>
		</select>
		<button @click="increment">+</button>
		<button @click="decrement">-</button>
		<button @click="incrementOdd">當(dāng)前求和為奇數(shù)再加</button>
		<button @click="incrementWait">等一等再加</button>
	</div>
</template>
 
<script>
	import {mapState,mapGetters} from 'vuex'
	export default {
		name:'Count',
		data() {
			return {
				n:1, //用戶選擇的數(shù)字
			}
		},
		computed:{
			//靠程序員自己親自去寫計(jì)算屬性
			/* sum(){
				return this.$store.state.sum
			},
			school(){
				return this.$store.state.school
			},
			subject(){
				return this.$store.state.subject
			}, */
 
			//借助mapState生成計(jì)算屬性,從state中讀取數(shù)據(jù)。(對(duì)象寫法)
			// ...mapState({he:'sum',xuexiao:'school',xueke:'subject'}),
 
			//借助mapState生成計(jì)算屬性,從state中讀取數(shù)據(jù)。(數(shù)組寫法)
			...mapState(['sum','school','subject']),
 
			/* ******************************************************************** */
 
			/* bigSum(){
				return this.$store.getters.bigSum
			}, */
 
			//借助mapGetters生成計(jì)算屬性,從getters中讀取數(shù)據(jù)。(對(duì)象寫法)
			// ...mapGetters({bigSum:'bigSum'})
			
			//借助mapGetters生成計(jì)算屬性,從getters中讀取數(shù)據(jù)。(數(shù)組寫法)
			...mapGetters(['bigSum'])
 
		},
		methods: {
			increment(){
				this.$store.commit('JIA',this.n)
			},
			decrement(){
				this.$store.commit('JIAN',this.n)
			},
			incrementOdd(){
				this.$store.dispatch('jiaOdd',this.n)
			},
			incrementWait(){
				this.$store.dispatch('jiaWait',this.n)
			},
		},
		mounted() {
			const x = mapState({he:'sum',xuexiao:'school',xueke:'subject'})
			console.log(x)
		},
	}
</script>
 
<style lang="css">
	button{
		margin-left: 5px;
	}
</style>

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue 子組件向父組件傳值方法

    vue 子組件向父組件傳值方法

    下面小編就為大家分享一篇vue 子組件向父組件傳值方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • Vue3中使用jsx/tsx的教程詳解

    Vue3中使用jsx/tsx的教程詳解

    這篇文章主要為大家詳細(xì)介紹了如何在Vue3中使用jsx/tsx的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的小伙伴可以了解下
    2024-02-02
  • 基于Vue實(shí)現(xiàn)拖拽功能

    基于Vue實(shí)現(xiàn)拖拽功能

    這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)拖拽功能,拖動(dòng)方塊進(jìn)行移動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • 在idea上Vue的安裝和創(chuàng)建過程

    在idea上Vue的安裝和創(chuàng)建過程

    本文詳細(xì)介紹了如何在計(jì)算機(jī)上安裝和配置Node.js,包括下載Node.js,驗(yàn)證安裝成功,配置npm的全局模塊目錄和緩存目錄,設(shè)置環(huán)境變量,配置npm鏡像,安裝Vue.js等步驟,通過這些指導(dǎo),你可以在IDEA上成功創(chuàng)建和運(yùn)行Vue項(xiàng)目
    2024-10-10
  • vue項(xiàng)目如何引入公共頭部底部

    vue項(xiàng)目如何引入公共頭部底部

    這篇文章主要介紹了vue項(xiàng)目如何引入公共頭部底部問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Element?Plus組件Form表單Table表格二次封裝的完整過程

    Element?Plus組件Form表單Table表格二次封裝的完整過程

    一般在后臺(tái)管理系統(tǒng)的開發(fā)中,都會(huì)遇到很多table,但每一次都去引入el-table就會(huì)導(dǎo)致代碼十分冗余,所以基于組件做一下二次封裝成自己需要的組件就十分nice,下面這篇文章主要給大家介紹了關(guān)于Element?Plus組件Form表單Table表格二次封裝的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • atom-design(Vue.js移動(dòng)端組件庫)手勢組件使用教程

    atom-design(Vue.js移動(dòng)端組件庫)手勢組件使用教程

    這篇文章主要介紹了atom-design(Vue.js移動(dòng)端組件庫)手勢組件使用教程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • Vue項(xiàng)目部署后首頁白屏問題排查與解決方法

    Vue項(xiàng)目部署后首頁白屏問題排查與解決方法

    在部署 Vue.js 項(xiàng)目時(shí),有時(shí)會(huì)遇到首頁加載后出現(xiàn)白屏的情況,這可能是由于多種原因造成的,本文將介紹一些常見的排查方法和解決方案,幫助開發(fā)者快速定位問題并解決,感興趣的小伙伴跟著小編一起來看看吧
    2024-08-08
  • vue watch如何深度監(jiān)聽數(shù)組每一項(xiàng)的變化

    vue watch如何深度監(jiān)聽數(shù)組每一項(xiàng)的變化

    這篇文章主要介紹了vue watch如何深度監(jiān)聽數(shù)組每一項(xiàng)的變化問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Vue+Echarts 3D地圖效果的實(shí)例代碼

    Vue+Echarts 3D地圖效果的實(shí)例代碼

    文章介紹了如何使用Vue+Echarts3D實(shí)現(xiàn)地圖效果,并分享了index.vue組件和mapOptions.js的核心方法,希望對(duì)大家有所幫助
    2025-12-12

最新評(píng)論

南溪县| 卓资县| 侯马市| 建宁县| 宁蒗| 荃湾区| 黔江区| 文化| 天门市| 毕节市| 香港| 绵竹市| 革吉县| 临潭县| 田林县| 名山县| 浦县| 安新县| 克什克腾旗| 当阳市| 东阳市| 莎车县| 宝坻区| 类乌齐县| 沙田区| 延寿县| 朝阳县| 敦煌市| 江北区| 白城市| 华蓥市| 香河县| 曲麻莱县| 万宁市| 西和县| 漳平市| 贵南县| 舒城县| 若羌县| 保定市| 祁连县|