export const useRequestOldRoutes = defineStore('requestOldRoutes', { state: (): RequestOldRoutesState => ({ requestOldRoutes: [], }), actions: { async setRequestOldRoutes(routes: Array<string>) { this.requestOldRoutes = routes; }, }, }); 讲解
这是一个定义了名为 requestOldRoutes 的 Store,使用了 defineStore 工具函数。该 Store 的状态包含一个 requestOldRoutes 数组属性,初始值为空数组。该 Store 的动作包含了一个 setRequestOldRoutes 异步动作,该动作接收一个 routes 参数,用于设置 requestOldRoutes 属性的值。
使用该 Store,需要在组件中通过 useRequestOldRoutes 函数获取 Store 实例,并调用 setRequestOldRoutes 动作来更新 requestOldRoutes 状态。例如:
import { useRequestOldRoutes } from '@/stores/requestOldRoutes';
const MyComponent = () => {
const requestOldRoutesStore = useRequestOldRoutes();
useEffect(() => {
const fetchRoutes = async () => {
const routes = await api.fetchRoutes();
requestOldRoutesStore.setRequestOldRoutes(routes);
};
fetchRoutes();
}, []);
return (
// ...
);
}
在组件中使用 useRequestOldRoutes 函数获取该 Store 实例后,可以调用 setRequestOldRoutes 动作来更新 requestOldRoutes 状态。在该示例中,我们在组件挂载时通过 fetchRoutes 函数异步获取数据,并将获取到的数据传递给 setRequestOldRoutes 动作,以此来更新 requestOldRoutes 状态。
原文地址: http://www.cveoy.top/t/topic/mEl 著作权归作者所有。请勿转载和采集!