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

石家庄百度推广家庄网站建设seo专业优化方法

石家庄百度推广家庄网站建设,seo专业优化方法,帮企业建设网站和推广网站,什么网站做班服比较好文章目录 前言一、pinia是什么?二、安装pinia三、注册pinia四、使用pinia定义数据及方法使用 优化如有启发,可点赞收藏哟~ 前言 vue2以前一直使用vuex实现状态管理 vue3之后推出了pinia… 一、pinia是什么? 直观、类型安全、轻便灵活的Vue …

文章目录

  • 前言
  • 一、pinia是什么?
  • 二、安装pinia
  • 三、注册pinia
  • 四、使用pinia
    • 定义数据及方法
    • 使用
  • 优化
    • `如有启发,可点赞收藏哟~`


前言

vue2以前一直使用vuex实现状态管理
vue3之后推出了pinia…


一、pinia是什么?

直观、类型安全、轻便灵活的Vue Store,使用具有DevTools支持的组合api

二、安装pinia

由于pinia本身没有提供设置缓存的功能,不过可以结合pinia-plugin-persistedstate实现

npm i pinia -S
npm i pinia-plugin-persistedstate -S

三、注册pinia

  • main.ts文件
import { createApp } from "vue";
import { createPinia } from "pinia";
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
import App from "./App/index.vue";const app = createApp(App);
// 注册  pinia , 并在 pinia 使用 piniaPluginPersistedstate
app.use(createPinia().use(piniaPluginPersistedstate));
app.mount("#app");

四、使用pinia

大部分开发都默认在 stores 目录放置缓存相关文件

定义数据及方法

pinia有两种写法,其中一个是同vuex类似的选项式(这种才能结合pinia-plugin-persistedstate设置浏览器缓存),还有一个就是更符合vue3组合式写法

  • stores/mapState.ts (选项式)
import { defineStore } from "pinia";export interface MapState {address: string;
}
const { SIS_STORE_NAME } = import.meta.env;export const useMapStore = defineStore(SIS_STORE_NAME + "map", {state: (): MapState => ({address: "",}),getters: {},actions: {setAdress(address: string) {this.address = address;},clearMessage() {this.address = "";},},persist: {/*** 使用的存储* @default $store.id*/key: SIS_STORE_NAME + "map",/*** 存储位置* @default localStorage*/storage: sessionStorage,/*** 需要设置缓存的state 如果未设置即存储所有state* @default undefined*/// paths: [],/*** 存储之前* @default null*/beforeRestore: () => {},/*** 存储之后* @default undefined*/afterRestore: () => {},/*** 启用时在控制台中记录错误。* @default false*/debug: true,},
});
  • stores/counter.ts (组合式)
import { ref, computed } from "vue";
import { defineStore } from "pinia";export const useCounterStore = defineStore("counter", () => {const count = ref(0);const doubleCount = computed(() => count.value * 2);function increment() {count.value++;}return { count, doubleCount, increment };
});

使用

如果是字段数据,需要使用storeToRefs 获取为响应式的,方法不用
虽然上述两种定义不同,但调用使用方式是一样的

import { storeToRefs } from "pinia";
import { useMapStore } from "./stores/mapState";
import { useCounterStore } from "./stores/counter";const { address } = storeToRefs(useMapStore())
const { setAdress, clearMessage } = useMapStore()
setAdress('')
clearMessage()const { count } = storeToRefs(useCounterStore())
const { increment } = useCounterStore()
increment()
console.log(count)

优化

  • stores/index.ts
import type { App } from "vue";
import { createPinia } from "pinia";
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'const store = createPinia().use(piniaPluginPersistedstate);// 全局注册 store
export function setupStore(app: App<Element>) {app.use(store);
}
export { store };
  • main.ts
import { createApp } from "vue";
import App from "./App/index.vue";
import { setupStore } from "./stores";
const app = createApp(App);
// 全局注册 状态管理(store)
setupStore(app)
app.mount("#app");

如有启发,可点赞收藏哟~

http://www.ds6.com.cn/news/106776.html

相关文章:

  • 服装网购网站十大排名手机如何制作一个网页链接
  • 安阳做网站公司商家怎么入驻百度
  • 旅游网站系统设计与开发站长工具网站查询
  • 网站自适应手机转码深圳推广公司哪家正规
  • 手机网站关键词快速排名国外媒体报道
  • 现在有哪些网站是做批发的寻找客户资源的网站
  • 广东品牌网站建设报价营销方式和手段
  • 网站里的轮廓图 怎么做的互联网项目推广平台有哪些
  • 网站建设7个基本流程步骤有哪些百度收录提交申请
  • 网站的关于我们页面武汉seo网站排名
  • wordpress建站空间网站优化外包多少钱
  • 湖南网站建设哪家专业代写平台
  • 外贸网站推广建设游戏推广员如何推广引流
  • html代码大全完整带图带字网站seo推广方案
  • 广州网站建设小程序开发网络口碑营销名词解释
  • 以什么主题做网站好推广广告
  • mac卸载电脑上的wordpress全国分站seo
  • 做招聘网站如何宣传小红书kol推广
  • wordpress上传大附件百度优化师
  • 网站建设与管理营销培训班
  • 商城网站制作公司地址长沙市网站制作
  • 嘉善在线做网站吗企业网站建设案例
  • 新翼设计网站建设公司网页设计与制作个人网站模板
  • 上海普陀区企业网站建设外贸如何推广
  • php网站开发考试seo的名词解释
  • 163企业邮箱怎么申请seo排名优化课程
  • 网站开发详细设计文档淘宝搜索排名
  • 单纯做seo能否提升网站流量世界新闻
  • 有没有专门做航拍婚礼网站最佳的搜索引擎
  • 大庆网站建设上海网络推广联盟