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

全球新冠死亡人数四川网络推广seo

全球新冠死亡人数,四川网络推广seo,琼海网站建设,浚县网站建设目录 0前言 1 手动添加Pinia 2 创建与使用仓库(Setup Store 组合式) 2.1 创建仓库 2.2 使用仓库数据 2.3 解构响应式数据 3 持久化插件 0前言 官网:Pinia | The intuitive store for Vue.js 1 手动添加Pinia 上手之后,可…

目录

0前言

1 手动添加Pinia

2 创建与使用仓库(Setup Store 组合式)

2.1 创建仓库

2.2 使用仓库数据

2.3 解构响应式数据

3 持久化插件


0前言

官网:Pinia | The intuitive store for Vue.js


1 手动添加Pinia

上手之后,可以通过create-vue脚手架勾选Pinia快速添加

第一步:安装Pinia

在没有Pinia的相目中,执行以下命令

npm i pinia

第二步:在main.js中添加pinia

此处为VUE3的操作,VUE2的操作请见官方文档:开始 | Pinia

import { createApp } from 'vue'
import { createPinia } from 'pinia'
import App from './App.vue'const pinia = createPinia() // 创建Pinia实例
const app = createApp(App) // 创建根实例app.use(pinia) // pinia插件的安装配置
app.mount('#app') // 视图的挂载

也可以用链式写法:

import { createApp } from 'vue'
import { createPinia } from 'pinia'
import App from './App.vue'const pinia = createPinia()createApp(App).use(pinia).mount('#app')

2 创建与使用仓库(Setup Store 组合式)

另一种方式(Option Store 选项式)见 定义 Store | Pinia 

2.1 创建仓库

你可以任意命名 `defineStore()` 的返回值,但最好使用 store 的名字,同时以 `use` 开头且以 `Store` 结尾。
(比如 `useUserStore`,`useCartStore`,`useProductStore`)
第一个参数是你的应用中 Store 的唯一 ID

// store/count.js
import { defineStore } from 'pinia'
import { ref, computed } from 'vue'export const usecountStore = defineStore('count', () => {// ———————————————————声明数据 state—————————————————————const number1 = ref(1)// ———————————————————声明方法 actions—————————————————————const addNum = () => {// 同步number1.value++}const subNum = () => {// 异步 - 模拟异步,1s后操作setTimeout(() => {number1.value--}, 1000)}// ———————————————————声明计算属性—————————————————————const doubleNum = computed(() => number1.value * 2)// ———————————————————导出属性与方法—————————————————————return {number1,addNum,subNum,doubleNum}
})

2.2 使用仓库数据

<script setup>
// 导入仓库
import { usecountStore } from '@/store/count'
// 获取数据
const count = usecountStore()
</script><template><div>number1: {{ count.number1 }}</div><div>doubleNumber1: {{ count.doubleNum }}</div><button @click="count.addNum">+1</button><button @click="count.subNum">-1</button>
</template><style scoped></style>

2.3 解构响应式数据

直接解构仓库中的响应式数据时,会得到非响应式的数据,需要用pinia中的 storeToRefs() 方法

注意:actions不需要!因为我们并不会改方法

<script setup>import { storeToRefs } from 'pinia'
const store = useCounterStore()// `name` 和 `doubleCount` 是响应式的 ref
// 同时通过插件添加的属性也会被提取为 ref
// 并且会跳过所有的 action 或非响应式 (不是 ref 或 reactive) 的属性const { name, doubleCount } = storeToRefs(store)// 作为 action 的 increment 可以直接解构const { increment } = store</script>

3 持久化插件

官网:Pinia Plugin Persistedstate

vue2持久化插件:GitHub - robinvdvleuten/vuex-persistedstate

第一步:安装插件 pinia-plugin-persistedstate

npm i pinia-plugin-persistedstate

第二步:在main.js中使用

import persist from 'pinia-plugin-persistedstate'
...
app.use(createPinia().use(persist))

第三步:在仓库中配置

import { defineStore } from 'pinia'
import { computed, ref } from 'vue'export const useCounterStore = defineStore('counter', () => {...return {count,doubleCount,increment}
}, {persist: true    //只需要配置这里
})
http://www.dtcms.com/wzjs/466386.html

相关文章:

  • 重庆城乡建设委员会官网东莞seo网络优化
  • 湖南建设监理协会网站郑州网站关键词优化公司哪家好
  • 局域网站建设如何提高网站排名的方法
  • 竹子建站邀请码seo教程论坛
  • 网站建设方法网站模板之家官网
  • 优科技网站建设苏州百度搜索排名优化
  • 万网做网站百度账号登录入口官网
  • 如何破解网站管理员登陆密码小红书广告投放平台
  • 建设的网站如何让用户注册搜索引擎优化培训班
  • 东莞建设银行客服电话seo是哪里
  • 六安网吧什么时候解封seo博客教程
  • 东莞网站建设企业调研报告万能模板
  • 做笑话网站赚钱西安网站建设制作
  • 建设个网站需要什么app推广联盟
  • 自学it做网站百度建站官网
  • wordpress 响应式插件福州seo管理
  • 长沙毕业设计代做网站价格站长工具seo综合查询腾讯
  • 门户网站名词解释网站优化排名易下拉系统
  • 网站用什么空间好长沙优化科技有限公司
  • 安康电商网站建设重庆网站seo公司
  • 网站怎么添加统计代码青岛seo关键词排名
  • 公司网站建设 阿里谷歌广告推广网站
  • 怎么用腾讯云做网站成都seo公司
  • b2c网址有哪些seo策略什么意思
  • 黄页网站查询数据链接搜索
  • 什么是网络推广?seo快速排名点击
  • 做网站的话 java和c怎样在网上做推广
  • 中文网站做google广告好吗外包公司什么意思
  • 哪个网站可以查到竣工资料怎么做网络搜索关键词
  • 义乌网站建设推广已备案域名购买平台