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

小说阅读网站怎么建设怎么创建公众号步骤

小说阅读网站怎么建设,怎么创建公众号步骤,网站标签设计,深圳企业网站建设企业十四 pinia 官网#xff1a;安装 | Pinia 中文文档 集中式状态管理#xff0c;与vuex相似#xff0c;提供变量存储便于数据共享。 从概念上类似于php中的session吧…… 适用于少量数据的共享#xff0c;可操作数据都是先定义后使用。 适用于判断用户是否登录#xff…十四 pinia 官网安装 | Pinia 中文文档 集中式状态管理与vuex相似提供变量存储便于数据共享。 从概念上类似于php中的session吧…… 适用于少量数据的共享可操作数据都是先定义后使用。 适用于判断用户是否登录存储用户信息等。 在组件外使用存储 | Pinia 中文文档 安装 vue2 npm install pinia npm install vue/composition-api vue3 npm install pinia 使用 main.js引入pinia // import ./assets/main.cssimport { createApp } from vue import App from ./App.vue import router from ./router import { createPinia } from piniaconst app createApp(App) const pinia createPinia()app.use(pinia) app.use(router) app.mount(#app) 设置文件store/test7.ts import {defineStore} from piniaconst useTest7Srore defineStore(test7,{actions:{addnum(){if(this.num100){this.numthis.n}else{console.log(num 100)}}},state:(){return {num:0,n:0}},getters:{getnum:(state){return num: state.num}} })export default useTest7Srore 引入defineStore定义唯一名称作为第一个参数传递。 state设置存储变量返回对象。 getters设置方法接收变量并处理。 actions设置方法便于处理业务逻辑。 最后向外部暴露。 可以多个逻辑设置多个文件有点像hooks可将重复的业务提取出来减少重复编写。 vue文件调用 script langts setupimport { ref } from vueimport useTest7Srore from /store/test7.tsimport Test8 from ./Test8.vuelet test7store useTest7Srore()function addn(){test7store.n Math.floor(Math.random() * 10) 1// test7store.num test7store.ntest7store.addnum()console.log(test7store.getnum)} /scripttemplate nameTest7 divdiv classmaindiv classdiv1pnum:{{test7store.num}} nbsp;nbsp; n:{{test7store.n}}/ppbutton clickaddn classbtn1addn/button/p/divTest8/Test8/div /div /templatestyle scoped.main{width: 80%;padding: 1em;margin: 0 auto;}.div1{background-image:linear-gradient(#accbee ,#e7f0fd 100%);height: 200px;border-radius: 30px;padding: 1em;}.btn1{height: 30px;background-image:linear-gradient(#1e3c72 ,#2a5298 100%);color: #fff;border: none;border-radius: 5px;} /style 定义的pinia仓库返回reactive对象也就是例子中test7store是reactive对象。 获取state中的定义变量应该是test7store.$state.num但是reactive对象会对其中定义ref()对象拆包处理所以直接写test7store.num也是对的。 可以调用其中自己封装的方法addnum改变num值或者调用getnum或者num值。 例子中存数据使用test7store.addnum()读数据使用test7store.getnum、test7store.num、test7store.n。 存数据方式 第一种 变量直接操作比如test7store.num1。 第二种批量变更。 test7store.$path({num:1,n:10 }) 和第一种的区别是第一种调用几次则修改几次$path是一起执行。 第三种使用actions中自己封装的方法比如test7store.addnum()。 第三种的优点在于适合处理业务逻辑。 从维护方面变量修改都写在封装方法里面可能好维护。 actions中可以使用thisthis是当前的store。 十五 storeToRefs 便于pinia的数据读取可以结构pinia定义的存储库暴露的变量。 官方文档storeToRefs() | Pinia 定义 import {defineStore} from pinia import { reactive } from vue//组合式 export const useTest8Srore defineStore(test8, (){let list reactive(localStorage.getItem(list)?JSON.parse(localStorage.getItem(list)):[]);//响应式数据function pushlist(info){list.push(info)}return {list,pushlist} }); export default useTest8Srore 使用 script langts setup import useTest8Srore from /store/test8 import { storeToRefs } from pinialet test8Srore useTest8Srore() let {list} storeToRefs(test8Srore) //list 是响应式数据/scripttemplatedivdivp v-for(value,index) in list :keyindex{{value}}/p/div/div /template 就是解构pinia的数据组件直接使用数据为响应式。 和toRefs比仅将暴露数据中的变量变为响应式。 十六 $subscribe 官网Plugins | Pinia 官网还提到$onAction。 两者都是起到监听作用 $subscribe 监听数据变化$onAction 监听方法调用 定义参考上述store/test7.ts文件。 调用 script langts setupimport { ref } from vueimport useTest7Srore from /store/test7.tsimport Test8 from ./Test8.vue// let n ref(0)// let num ref(0)let test7store useTest7Srore()function addn(){test7store.n Math.floor(Math.random() * 10) 1// test7store.num test7store.ntest7store.addnum()console.log(test7store.getnum)}test7store.$subscribe((state, getters) {console.log(state)console.log(getters)})test7store.$onAction(({ name, store, after, args, payload }) {console.log(name)console.log(store)console.log(after)console.log(args)console.log(payload)}) /scripttemplate nameTest7 divdiv classmaindiv classdiv1pnum:{{test7store.num}} nbsp;nbsp; n:{{test7store.n}}/ppbutton clickaddn classbtn1addn/button/p/divTest8/Test8/div /div /templatestyle scoped.main{width: 80%;padding: 1em;margin: 0 auto;}.div1{background-image:linear-gradient(#accbee ,#e7f0fd 100%);height: 200px;border-radius: 30px;padding: 1em;}.btn1{height: 30px;background-image:linear-gradient(#1e3c72 ,#2a5298 100%);color: #fff;border: none;border-radius: 5px;} /style 点击addn按钮console输出 //onAction 部分 addnum Test7.vue:20 Proxy(Object) {$id: test7, $onAction: ƒ, $patch: ƒ, $reset: ƒ, $subscribe: ƒ, …} Test7.vue:21 ƒ after(callback) {afterCallbackList.push(callback);} Test7.vue:22 [] Test7.vue:23 undefinedTest7.vue:12 num:3//subscribe 部分 Test7.vue:15 {storeId: test7, type: direct, events: {…}} Test7.vue:16 Proxy(Object) {num: 3, n: 3}
http://www.pierceye.com/news/88746/

相关文章:

  • 优质做网站费用有没有做生物科技相关的网站
  • mvc做网站企业管理咨询上班好吗
  • 欧美电影免费网站遂宁网站设计
  • 做网站 程序员 暴富渭南网站建设服务
  • html 网站开发网站建设的考虑
  • 做教育网站用什么颜色南京手机网站制作
  • 网站建设工作整改报告柳州建设网栗园新居
  • 手机网站开发设计动漫设计师资格证
  • 宝安网站建设制作搬家网站建设公司
  • 怎样建设一个英语网站建设培训网站建设
  • 做网站主页效果图好多公司为啥只做网站 不考虑推广
  • 西城专业网站建设公司哪家好统计网站访客人数
  • 如何做全景网站网络营销策划书范文
  • h5技术网站所见即所得网站管理系统
  • 一站式营销型网站建设服务山西建筑工程集团有限公司
  • 会计证继续教育在哪个网站做免费企业管理培训课程视频
  • 百度广州给做网站公司wordpress输入正确密码无法登陆
  • 种子搜索网站怎么做的佛山网站建设计
  • 模板网站的建设wordpress博客常用插件
  • 南平做网站婚恋网站 备案条件
  • 西宁哪家网络公司做网站广告机
  • dede小视频网站源码专业网站建设制作公司哪家好
  • 做外贸英语网站国外网站做问卷
  • 山西省住房与城乡建设厅网站wordpress如何创建分类
  • 网站运营的具体工作包括哪些2015年做网站行不行
  • 交友类网站功能建设思路企业做网站的困惑
  • 电子商务网站功能页面广东手机网页制作
  • 企业网站建设 招标 评分表南昌微信网站建设
  • 网站开发学习方法网站建站查询
  • 网站建设解析万网域名管理平台登录