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

网站制作2019趋势广西住建领域培训考试系统

网站制作2019趋势,广西住建领域培训考试系统,最便宜的网站建设公司,简单响应式网站设计代码pinia工具 defineStore(创建pinia) 作用:用于定义一个 Pinia store。 用法: 接收一个唯一的 ID 和一个配置对象,配置对象中可以定义 state、getters 和 actions。state 是一个函数,返回初始状态。getters 类似于 Vue 组件中的计…

pinia工具

defineStore(创建pinia)

  • 作用:用于定义一个 Pinia store。

  • 用法

    • 接收一个唯一的 ID 和一个配置对象,配置对象中可以定义 stategetters 和 actions
    • state 是一个函数,返回初始状态。
    • getters 类似于 Vue 组件中的计算属性,用于派生状态。
    • actions 用于修改状态和执行异步操作。

示例代码:

import { defineStore } from 'pinia';export const useCounterStore = defineStore('counter', {state: () => ({count: 0,}),getters: {doubleCount: (state) => state.count * 2,},actions: {increment() {this.count++;},},
});

 storeToRefs(响应式数据)

  • 响应式绑定:确保模板中的绑定能够响应 store 状态的变化。
  • 解构便利:允许你解构 store 的状态,同时保持响应式特性。
  • 避免不必要的重新渲染:通过只解构需要的状态,可以减少不必要的重新渲染。

示例代码:

<script setup>
import { useCounterStore } from "@/stores";
import { storeToRefs } from "pinia";  //重点
const counter = useCounterStore();// tab栏的总数与数据
const { editableTabsValue, editableTabs } = storeToRefs(counter); //重点// 删除 tab
const removeTab = (e) => {counter.removeTab(e);
}
</script>

插件系统

pinia持久化数据可查看上一章节


$subscribe 和 $onAction(监听store数据)

  • $subscribe

    • 作用:允许你订阅 store 的状态变化,并在状态发生变化时触发回调函数。
    • 用法:在 store 实例上调用 $subscribe 方法,传入一个回调函数,回调函数接收两个参数:mutation 和 state
  • $onAction

    • 作用:允许你监听 store 中 actions 的调用,并在 action 调用前后执行逻辑。
    • 用法:在 store 实例上调用 $onAction 方法,传入一个回调函数,回调函数接收一个包含 action 名称、args 参数等信息的对象。

示例代码:

import { useCounterStore } from '@/stores/counter';export default {setup() {const store = useCounterStore();// 订阅状态变化store.$subscribe((mutation, state) => {console.log('State changed:', mutation, state);});// 监听 action 调用store.$onAction(({ name, args }) => {console.log(`Action ${name} called with args:`, args);});return {store,};},
};

 与 Vue Router 集成

  • 作用:Pinia 可以与 Vue Router 集成,以便在路由变化时执行特定的逻辑,如加载数据或重置状态。

  • 用法

    • 在路由守卫中访问和修改 Pinia store 的状态。
    • 使用 store 的 actions 在路由变化时执行异步操作。

示例代码:

import { useCounterStore } from '@/stores/counter';
import { onBeforeRouteUpdate } from 'vue-router';export default {setup() {const store = useCounterStore();onBeforeRouteUpdate((to, from, next) => {// 在路由变化时执行逻辑store.reset(); // 假设 store 有一个 reset 方法next();});return {store,};},
};

http://www.dtcms.com/wzjs/797972.html

相关文章:

  • 昆山有做网站的公司吗万户网络学校网站建设
  • 公司网站建设需要准备哪些资料美食网站建设策划书
  • 网站集约建设电力建设工程质监总站网站
  • 网站制作北京区块链开发公司
  • 微山网站建设哪家便宜wordpress短链识别
  • 电子商务网站建设的结论做网站会什么软件
  • 网站模块wordpress每篇文章怎么加关键词
  • 东莞市建设工程质监督站网站社区cms
  • 虚拟主机网站建设过程企业官网开发公司
  • 洛阳网站建设的公司哪家好郑州网站建设公司电话多少
  • 网站左侧分类菜单怎么做使用模板怎么建站
  • 西数网站管理助手公司网站建设设计如何收费
  • 网站源码带手机版wordpress静态化好处
  • 做印刷哪个网站好宝安seo优化公司
  • 人才招聘网站怎么做开发一个app要多少费用
  • 多种昆明网站建设湛江网站建设技术托管
  • 湖北企业模板建站信息淘宝客 插件 wordpress
  • 企业免费建站怎么做考试资料网站
  • 网站进度条特效2022年域名申请时间
  • 网站结构怎么做临沂网站建设对实体企业的重要性
  • 有人在相亲网站骗人做传销apicloud成品源码
  • 苏州高端网站建设咨询项目计划书ai生成
  • 网站转小程序工具网站开发人员职位晋升空间
  • 如何制作简易 网站重庆网站开发服务器
  • 烟台 网站建设摄影设计工作室
  • 无忧网站建设多少钱网页设计图片的边框怎么做
  • 做网站的主要作用百度推广优化怎么做
  • 珠海 电商 网站建设招聘网站怎么做效果好
  • 企业门户网站案例青浦练塘网站建设
  • 初识网站开发流程图南宁电商网站建设