vue学习笔记8

Pinia基础使用 - 计数器案例

定义Store(state + action)

组件使用Store

getters实现

Pinia中的 getters 直接使用 computed函数 进行模拟, 组件中需要使用需要把 getters return出去

action异步实现

编写方式:异步action函数的写法和组件中获取异步数据的写法完全一致接口地址:

需求:在Pinia中获取频道列表数据并把数据渲染App组件的模板中

storeToRefs工具函数

使用storeToRefs函数可以辅助保持数据(state + getter)的响应式解构

pinia持久化插件

Pinia 如何快速实现持久化?

pinia-plugin-persistedstate

Vue3 大事件管理系统

创建项目

  1. 进入项目目录

  2. 安装依赖

  3. 启动项目

Eslint 配置代码风格

配置文件 .eslintrc.cjs

  1. prettier 风格配置

  2. 单引号

  3. 不使用分号

  4. 宽度80字符

  5. 不加对象|数组最后逗号

  6. 换行符号不限制(win mac 不一致)

  7. vue组件名称多单词组成(忽略index.vue)

  8. props解构(关闭)

注:安装Eslint且配置保存修复,不 要开启默认的自动保存格式化

暂存区 eslint 校验

  1. 安装 lint-staged 包 pnpm i lint-staged -D

  2. package.json 配置 lint-staged 命令

  3. .husky/pre-commit 文件修改

目录调整

默认生成的目录结构不满足我们的开发需求,所以这里需要做一些自定义改动。

主要是以下工作:

  1. 删除一些初始化的默认文件

  2. 修改剩余代码内容

  3. 新增调整我们需要的目录结构

  4. 拷贝全局样式和图片,安装预处理器支持

路由初始化

创建路由实例由 createRouter 实现

路由模式

  1. history 模式使用 createWebHistory()

  2. hash 模式使用 createWebHashHistory()

  3. 参数是基础路径

按需引入 Element Plus

Pinia 构建用户仓库 和 持久化

Pinia 仓库统一管理

pinia 独立维护

初始化代码在 main.js 中,仓库代码在 stores 中,代码分散职能不单一

优化:由 stores 统一维护,在 stores/index.js 中完成 pinia 初始化,交付 main.js 使用

仓库 统一导出

使用一个仓库 import { useUserStore } from `./stores/user.js` 不同仓库路径不一致

优化:由 stores/index.js 统一导出,导入路径统一 `./stores`,而且仓库维护在 stores/modules 中

首页整体路由设计

相关推荐
敬往事一杯酒哈7 小时前
海康 AGV 导航读码器学习
学习
qq_284274059 小时前
机械原理笔记:平面机构自由度计算(复合铰链、局部自由度、虚约束)与四杆机构入门(含考点)
笔记·学习·平面·自动化·制造
qq_2842740510 小时前
数控铣床与加工中心笔记:铣刀与刀柄系统、G54试切对刀、镜像加工指令、孔加工工艺(钻扩铰镗)与固定循环G73/G83/G81/G76/G87/G84
笔记·学习·自动化·制造
Titan202411 小时前
MySQL访问个人学习笔记
笔记·学习·mysql
小雪崩12 小时前
嵌入式学习 day64:字符设备驱动
学习
深圳老胡12 小时前
STM32CubeMX 生成 CMake 工程,用 VSCode 编译与调试的完整流程
笔记·stm32·单片机·代码规范
个 人 练 习 生12 小时前
C++ string 类模拟实现:从底层理解字符串(上)
开发语言·c++·经验分享·学习·程序人生
坤坤子吖12 小时前
C++智能指针:RAII、shared_ptr与内存泄漏
开发语言·c++·笔记·学习
乐橙开放平台12 小时前
智慧连锁客流检测和离岗检测怎么对接
大数据·人工智能·笔记·物联网·自动化·音视频·智能家居
零基础12313 小时前
FinalShell 使用教程:从安装到高效运维
运维·经验分享·笔记·finalshell