vuex结合Composition Api
dearweb
发布:2021-08-15 14:35:05阅读:
vuex结合Composition Api使用,如果你之前对vuex比较了解用的比较熟悉,那这一篇文章,相信你会很容易就看懂的。
安装vuex
npm install vuex@next --save yarn add vuex@next --save
安装完了之后再新建vuex目录这里与之前文章里面写到的一样,你可以去看看vuex的基本使用。这里主要讲解vuex在Composition Api怎么使用。
Composition Api使用vuex(在组件中获取state,执行mutations方法)
<template>
<div class='vuex'>
{{count}}
<hr>
{{$store}}
<br>
<button @click="setCount(10)">修改count的值(执行方法)</button>
</div>
</template>
<script type="ts">
import {computed,defineComponent} from 'vue'
import { useStore } from 'vuex'
export default defineComponent({
name: 'vuex',
setup(){
const store = useStore()
return{
// 获取state
count:computed(()=> store.state.count),
// 获取getter 执行mutations方法
setCount:(e)=>{
store.commit('setCount',e)
}
}
},
})
</script>
<style lang='less' scoped>
</style>Composition Api使用vuex获取getters/actions里面的方法
<template>
<div class='vuex'>
{{count}}
<hr>
{{$store}}
<br>
<button @click="setCount(10)">修改count的值(执行mutations方法)</button>
<br>
<hr>
{{num}}
<br>
<hr>
<button @click="actionsClick">出发actions方法</button>
</div>
</template>
<script type="ts">
import {computed,defineComponent} from 'vue'
import { useStore } from 'vuex'
export default defineComponent({
name: 'vuex',
setup(){
const store = useStore()
return{
// 获取state
count:computed(()=> store.state.count),
// 执行mutations方法
setCount:(e)=>{
store.commit('setCount',e)
},
//获取getter 方法
num:computed(()=>{
return store.getters.doneTodos
}),
//出发actions方法
actionsClick(){
store.dispatch('setContent')
}
}
},
})
</script>
<style lang='less' scoped>
</style>上面所写到的就是在Composition Api中使用vuex的方法,基本上与vuex常规使用一样,写法上略有不同,你看懂了吗?
小礼物走一波,支持作者
赏还没有人赞赏,支持一波吧