当前位置: 首页 > news >正文

一个网站开发项目小组成员公司内部自己做抽奖网站

一个网站开发项目小组成员,公司内部自己做抽奖网站,wordpress淘宝客主题使用说明,如何建立一个网站详细步骤前言 接上一篇学习笔记,今天主要是抽空学习了vue的状态管理,这里学习的是vuex,版本4.1。学习还没有学习完,里面有大坑,难怪现在官网出的状态管理用Pinia。 一、vuex状态管理知识点 上面的方式没有写全,还有…

前言

        接上一篇学习笔记,今天主要是抽空学习了vue的状态管理,这里学习的是vuex,版本4.1。学习还没有学习完,里面有大坑,难怪现在官网出的状态管理用Pinia。


一、vuex状态管理知识点

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
        上面的方式没有写全,还有一种用钩子的方式,code示例见下面,后面更精彩。

二、code示例

1.新建vue项目

        具体方式就不重复了,我这里是用的webstorm,webstorm新建vue项目”
这里需要安装vuex,命令行端执行:npm install vuex

2.代码示例

先上目录截图:
在这里插入图片描述
main.js

import { createApp } from 'vue'
import App from './App.vue'
import VuexStore from "./store";createApp(App).use(VuexStore).mount('#app')

store/index.js

//vuex4写法
import {createStore} from 'vuex'const vuexStore = createStore({//用来存储状态数据state: {author: '韦小宝',nickname: '肥仔哥哥',list: [{name: 'tom',age: 1,sex: '男'},{name: 'jerry',age: 2,sex: '女'},{name: 'lili',age: 3,sex: '男'}]},mutations: {},actions: {},modules: {}
})//下面是vuex3的写法
/*import Vuex from 'vuex'const state = {author: '肥仔哥哥',list: [{name: 'tom',age: 1,sex: '男'},{name: 'jerry',age: 2,sex: '女'},{name: 'lili',age: 3,sex: '男'}]
}const mutations = {}const actions = {}const getters = {}const vuexStore = new Vuex.Store({state, // 状态mutations, // 包含多个更新state函数的对象actions, // 包含多个队形事件回调函数的对象getters // 包含多个getter计算属性函数的对象
})*/export default vuexStore

App.vue

<template><img alt="Vue logo" src="./assets/logo.png"><HelloWorld/><hr><CompA/>
</template><script setup>
import HelloWorld from "@/components/HelloWorld.vue";
import CompA from "@/components/CompA.vue";</script><style>
#app {font-family: Avenir, Helvetica, Arial, sans-serif;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;text-align: center;color: #2c3e50;margin-top: 60px;
}
</style>

HelloWorld.vue

<template><div class="hello"><p>demo author:{{ author }}</p><h1>list 数据</h1><ul><li v-for="item in list" :key="item.id"><p>{{ item.name }} | {{ item.age }} | {{ item.sex }}</p></li></ul><p>辅助函数读取nickname:{{ nickname }}</p><p>辅助函数读取localCurAge:{{ mapStateParam.localCurAge }}</p></div>
</template><script setup>
import {computed} from "vue";
import vuexStore from '@/store/index';//store辅助函数
import {useStore, mapState} from "vuex";//方式1:store存储对象访问
const author = vuexStore.state.author;
const list = vuexStore.state.list;
console.log('HelloWorld setup,store对象:', vuexStore.state)//方式2:用useStore钩子,与store对象一样
const useStoreHook = useStore();
console.log('HelloWorld setup,useStore钩子:', useStoreHook.state)//方式3:store辅助函数访问
const mapStateParam = computed(() => {return {localCurAge: 17,...mapState(['author','nickname','list']) //...对象展开运算符}
})
console.log('HelloWorld setup,mapState辅助函数:', mapStateParam.value.localCurAge);
//console.log('HelloWorld setup,mapState辅助函数:', mapStateParam.value.nickname());/*
其实可以直接接收,用computed包,是转计算属性
const mapStateParamNew = mapState(['author','nickname','list']);
console.log('HelloWorld setup,mapState辅助函数2:', mapStateParamNew.author())
*/</script><style scoped></style>

ComA.vue

<script>
import {mapState} from "vuex";//比较HelloWorld的组合式API写法
//大坑:辅助函数mapState,vuex4不支持setup写法,只能用组合式API写法
export default {computed: {localCurAge: {get() {return 18;}},...mapState(['author', 'nickname', 'list'])},
}</script><template><div class="hello"><p>demo author:{{ author }}</p><h1>list 数据</h1><ul><li v-for="item in list" :key="item.id"><p>{{ item.name }} | {{ item.age }} | {{ item.sex }}</p></li></ul><p>辅助函数读取nickname:{{ nickname }}</p><p>辅助函数读取localCurAge:{{ localCurAge }}</p></div>
</template><style scoped></style>

三、效果截图

在这里插入图片描述

在这里插入图片描述

四、异常原因

上半部分nickname不能得到的原因:
在这里插入图片描述

vuex官网明确说明辅助函数必须使用选项式方式,期待后面的版本能兼容下
在这里插入图片描述

总结

  • 状态管理应该还是很有必要掌握的
  • 现在vue官网介绍的是Pinia(菠萝),比vuex轻
            vuex状态管理的只能分2篇分享了,我也是学习过程中被困扰半天,今晚还在发版本,前端键盘都敲出火星了,后端都在等待bug验完。
            与大家共同进步,uping!
http://www.yayakq.cn/news/420405/

相关文章:

  • 四川北路街道网站建设网页制作专业软件有哪些
  • 网站设计论坛做酒店管理网站的作用
  • 网站要交钱吗西安高科鱼化建设有限公司网站
  • 如何建设网站制作平台网站搭建南京
  • 电影购买网站怎么设计福建厦门网站建设
  • 临沂seo建站网新企业网站管理系统 破解
  • 网站建设痛点国产软件开发工具
  • 微网站中加入一键拨号功能代码搜索引擎的四个组成部分及作用
  • 做网站不推广管用吗教育网站开发文档
  • 账号权重查询入口站长工具网站设计介绍怎么写
  • 惠州网站seo收费深圳网站制作的公司哪家好
  • 弄一个网站多少钱企业网站建设机构
  • 阿里虚拟机建设网站wordpress多域名绑定
  • 辽阳太子河网站建设广东省外贸网站建设
  • 怎么自己做免费网站做网站需要会的软件
  • 专业做app下载网站广州商城网站制作网站
  • 个体工商户营业执照查询官网正规网站优化推广
  • 网站内页怎么做301定向广告联盟代理平台
  • 贵州黔东南双控体系建设网站wordpress爬取文章插件
  • 3d模型代做网站泰州制作公司网站
  • 网站活动页面wordpress编辑器 下载
  • 去年做啥网站致富江西企业网站建设公司
  • 南通企业网站怎么建设花都网站开发公司
  • 网站手机端页面怎么做的网站设计开发维护
  • 卫浴外贸版网站案例怎么做百度里面自己的网站
  • 网站二次开发的模板种类网络域名后缀有哪些
  • 不用源码做网站上海企业网站模板建站
  • 大连网站建设dl zw网站建设饣首选金手指
  • 手机网站制作公司王业勇
  • 建设网站的那个公司好阿克苏网站建设