在 Vue 3 开发中,使用 Pinia 进行状态管理时,处理异步数据加载是一个常见且重要的任务。本文将通过一个实际的例子,展示如何在 Pinia 中管理异步数据加载,并解决计算属性(computed properties)在异步操作中的常见问题。
背景
假设我们有一个游戏应用,需要从 Firestore 数据库加载玩家数据。我们希望在玩家数据加载时,显示玩家ID,加载完成后显示玩家的名字。为此,我们使用 Pinia 管理状态,并利用其响应性特性。
代码示例
首先,我们定义一个 Pinia 存储:
import{defineStore}from'pinia'import{ref,computed}