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

网站弹窗代码wordpress数据统计插件

网站弹窗代码,wordpress数据统计插件,微信网站入口,网站建设插件代码大全系列文章目录 第八章 Pinia 文章目录 系列文章目录前言一、安装和配置:二、基本使用三、一个更真实的例子 前言 Pinia是Vue.js应用程序的状态管理库。它提供了一种简单,轻量级的解决方案,用于在Vue应用程序中管理和维护状态。Pinia库的特点…

系列文章目录

第八章 Pinia


文章目录

  • 系列文章目录
  • 前言
  • 一、安装和配置:
  • 二、基本使用
  • 三、一个更真实的例子


前言

Pinia是Vue.js应用程序的状态管理库。它提供了一种简单,轻量级的解决方案,用于在Vue应用程序中管理和维护状态。Pinia库的特点是易于使用和集成,可以使开发者在不牺牲性能的情况下更有效地处理和维护状态。pinia中有三个概念,分别是:state、getter、action,对应于Vue组件中的:data、computed、methods。


一、安装和配置:

安装:通过命令:npm install pinia@2.1.7 ,或者在创建vue项目的时候勾选使用Pinia。
配置:在main.js中,需要创建pinia对象,并与app对象进行绑定,示例代码如下:

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

二、基本使用

通常在src目录下创建一个stores文件夹,然后在里面按需创建js文件。假设要创建一个用于管理counter全局变量的库文件,那么可以创建counter.js文件,然后填入以下代码:

import { defineStore } from 'pinia'export const useCounterStore = defineStore('counter', () => {const count = ref(0)function increment() {count.value++}return { count, increment }
})

或者使用选项式API:

import { defineStore } from 'pinia'export const useCounterStore = defineStore('counter', {state: () => {return { count: 0 }},// 也可以这样定义// state: () => ({ count: 0 })actions: {increment() {this.count++},},
})

这样就定义好了一个count变量,以后在组件中可以通过以下三种方式修改:

<script setup>
import { useCounterStore } from '@/stores/counter'
const counterStore = useCounterStore()
// 1. 直接修改
counterStore.count++
// 2. 使用$patch批量修改
counterStore.$patch({ count: counterStore.count + 1 })
// 3. 使用action修改
counterStore.increment()
</script>
<template><!-- 直接从 store 中访问 state --><div>Current Count: {{ counter.count }}</div>
</template>

以上三种修改方式的应用场景如下:

  1. 如果只要修改一个状态变量,并且不需要额外的操作,那么推荐使用第一种方法。
  2. 如果要一次性修改多个状态变量,那么推荐使用$patch方法,效率更高。
  3. 如果在修改状态变量的同时要做一些额外的操作,那么推荐第三种方法。

三、一个更真实的例子

import { defineStore } from 'pinia'
export const useTodos = defineStore('todos', {state: () => ({/** @type {{ text: string, id: number, isFinished: boolean }[]} */todos: [],/** @type {'all' | 'finished' | 'unfinished'} */filter: 'all',// 类型将自动推断为 numbernextId: 0,}),getters: {finishedTodos(state) {return state.todos.filter((todo) => todo.isFinished)},unfinishedTodos(state) {return state.todos.filter((todo) => !todo.isFinished)},/*** @returns {{ text: string, id: number, isFinished: boolean }[]}*/filteredTodos(state) {if (this.filter === 'finished') {// 调用其他带有自动补全的 getters ✨return this.finishedTodos} else if (this.filter === 'unfinished') {return this.unfinishedTodos}return this.todos},},actions: {// 接受任何数量的参数,返回一个 Promise 或不返回addTodo(text) {// 你可以直接变更该状态this.todos.push({ text, id: this.nextId++, isFinished: false })},},
})

http://www.yayakq.cn/news/609954/

相关文章:

  • 网站建设链接镇江丹徒发布
  • 网站建设的总结100字手机网站建设价钱
  • 织梦做英文网站出现乱码怎样学好网站开发
  • 如何做网站排名东台网站建设服务商
  • 网站系统建设支出分录网页游戏公益服平台
  • 金华做网站多少钱wp建站系统
  • 个人站长做电音网站做网站练手项目
  • php网站开发框架科技大学全国排名
  • 商城网站建设最新报价建设银行网站会员用户名格式
  • 网站建设优化服务机构深做网站公司
  • 免费做海报的网站接做室内效果图的网站
  • 外贸导向企业网站最新楼盘价格走势图
  • 电子政务与网站建设工作总结行政部网站建设规划
  • 网站 空间 购买成都网站关键词
  • 网站实名认证需要什么资料设计制作数字电压表
  • 网站文件appwordpress域名空间
  • 郑州网站建站做电影网站怎么拿到版权
  • 网站推广的优点网站建设相关博客
  • 在线做GO分析的网站做淘宝网站用什么软件有哪些内容
  • 深圳分销网站建设seo文章外包
  • 服务器网站部署端口配置个人博客网页设计图片
  • 最缺工的一百个职业西安官网seo方法
  • 国外一个做ppt的网站wordpress增加留言板
  • 网络营销的含义有哪些绍兴百度推广优化排名
  • 学校网站建设问卷调查表成都网站优化维护
  • 网站建设公司招网站设计搜狗网站录入
  • 怎么做一个简单的网站广州游戏网站建设
  • 自助建站系统厂家哈尔滨建站优化定制
  • 英国做网站的人成都正规集团网站制作维护
  • 专业网站建设科技公司dnf制裁做任务网站