Pinia+Router学习笔记(三)

简介: 本节记录解构Store过程中的相关操作及注意事项

Pinia不允许直接解构Store,因为Store背后使用的是proxy对象,直接解构会导致其失去响应式

<template>
    <div>pinia:{{ Test.current }}---{{ Test.name }}---{{ Test.num }}</div>
</template>

<script setup lang="ts">
import { useTestStore } from './Store'

const Test = useTestStore()
let { current, num } = Test
current = '失去了响应式'
</script>

<style scoped></style>

此时修改解构出来的数据将不会对模板上的内容产生任何影响。为了解决这个问题,Pinia提供了storeToRefs来为这些数据重新恢复响应式,不过要额外加上.value(和toRef相同,给里面的数据包裹一层响应式对象)

<template>
    <div>pinia:{{ Test.current }}---{{ Test.name }}---{{ Test.num }}</div>
</template>

<script setup lang="ts">
import { useTestStore } from './Store'
import { storeToRefs } from 'pinia';

const Test = useTestStore()
let { current, num } = storeToRefs(Test)
current.value = '现在我是响应式的了'
</script>

<style scoped></style>

这种用法和直接Test.current = '现在我是响应式的了'相同

相关文章
|
9月前
|
JavaScript
vue.router和vue.route
vue.router和vue.route
|
2天前
|
JavaScript 前端开发 数据安全/隐私保护
Vue Router 简介
Vue Router 是 Vue.js 官方的路由管理库,用于构建单页面应用(SPA)。它将不同页面映射到对应组件,支持嵌套路由、路由参数和导航守卫等功能,简化复杂前端应用的开发。主要特性包括路由映射、嵌套路由、路由参数、导航守卫和路由懒加载,提升性能和开发效率。安装命令:`npm install vue-router`。
|
6月前
|
前端开发 JavaScript UED
什么是 React Router?
【8月更文挑战第31天】
39 0
|
9月前
|
JavaScript
|
9月前
|
JavaScript 前端开发 网络架构
Vue Router:让你的应用路由起来!
Vue Router:让你的应用路由起来!
|
前端开发 网络架构 UED
React Router
React Router
121 0
Pinia+Router学习笔记(九)
本节记录路由历史记录相关内容
83 0
|
JavaScript
Pinia+Router学习笔记(一)
本系列笔记内容根据B站up主“小满zs”视频教程整理而成,本节记录pinia的搭建过程
176 0
|
存储
Pinia+Router学习笔记(六)
从本节开始进入Router学习,先介绍下Vue-Router的基本配置
91 0
|
API
Pinia+Router学习笔记(五)
本节记录例API和Pinia持久化插件相关内容
109 0