类型测试(Type Testing)
类型测试(Type Testing)是 Pinia 学习中的单个核心知识点,下面直接说明用法。
定义
类型测试(Type Testing)是 Pinia 使用中的一个独立知识点,核心作用是:使用@vue/expect-type或tsd测试Store的类型定义,防止类型回归。
语法
测试语法通常先创建独立 Pinia 实例,再断言 Store 状态或行为。
TypeScript
interface UserState {
id: number
name: string
roles: string[]
}
export const useUserStore = defineStore('user', {
state: (): UserState => ({ id: 0, name: '', roles: [] }),
actions: { setName(name: string) { this.name = name } }
})
示例
TypeScript
interface UserState {
id: number
name: string
roles: string[]
}
export const useUserStore = defineStore('user', {
state: (): UserState => ({ id: 0, name: '', roles: [] }),
actions: { setName(name: string) { this.name = name } }
})
注意事项
复杂状态不要依赖隐式 any,优先声明接口或类型别名。
要点总结
类型测试(Type Testing)只解决当前知识点对应的问题。- 优先使用 Pinia 官方 API,避免引入多余封装。
- 示例代码应保持 Store 简洁、职责清晰。
📝 发现内容有误?点击此处直接编辑