Vuex讲解

前言

ee76f03207184eed610713371215c815.png

 大家好 我是歌谣 今天给大家带来vuex的讲解

安装vite

815b604b17d5627bdc0a4096f5e9278a.png

  yarn create vite -D

f138efcc07b7b1bd20f10e2c1835d3d3.png

 安装成功之后

7e22cefdabd5515a31da0154b0fef1c3.png

 yarn add vuex

024954694a87f410fa221aee60c39e77.png

  依赖

ec55cf33659088312317c729872d1eea.png

{
"name": "vite-vue-project",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite --port 3002",
"build": "vite build",
"preview": "vite preview"
},
"dependencies": {
"vue": "^3.3.4",
"vuex": "^4.1.0"
},
"devDependencies": {
"@vitejs/plugin-vue": "^4.2.3",
"vite": "^4.4.5"
}
}

store中的index.js

d13fc723344e9d13099c7c7a32ea4c16.png

import {createStore} from 'vuex'
const defaultValue={
count:1,
todos:[{
id:1,
text:"geyao",
done:false
}]
}
export default createStore({
state(){
return defaultValue
},
mutations:{
increment(state,payload={amount:1}){
return (state.count=state.count+payload.amount)
}
},
actions:{
increment({commit},payload){
commit('increment',payload)
}
},
getters:{
double:(state)=>state.count*2,
getTodoById:state=>id=>state.todos.find((todo)=>todo.id===id)
}
})

Helloword.js

2b6d97ae2462276ad780e6938df1604e.png

<script setup>
import { useStore } from "vuex"
import { computed } from "vue";
const store=useStore()
const {state}=store
const countDouble=computed(()=>
store.getters.double
)
</script>
<template>
<div class="card">
<p>{{ countDouble }}</p>
<button type="button" @click="store.commit('increment')">count is {{ state.count }}</button>
<button type="button" @click="store.dispatch('increment',{amount:20})">actions is {{ state.count }}</button>
<button type="button" @click="store.commit('increment')">count is {{ countDouble }}</button>
<p>
Edit
<code>componnets/helloworld</code>
</p>
</div>
</template>
<style scoped></style>

 运行结果

e4c8c910bf1c2e2dae4f78171fff6a1f.png

82ad03334140534070ece7487324320d.png

点击上方蓝字关注我们

c7d57dc95e362a83943994c3b603e29e.png

下方查看历史文章

3edc95b46332c92c66a58c4f7cf6de38.png

DOM-Diff讲解

javascript树形结构化

原生+TS实现todolist效果

关于原始typescript实现todolist笔记(装饰器模式)

posted @   前端导师歌谣  阅读(6)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示