لدي لوحة بيكسي مع معالجات المؤشر. يمكنك النقر على نقطة في 'التسلسل' وتحريكها.
كانت معالجات الفأرة تحتوي على حالة قديمة. لإصلاح ذلك، أنا أعيد إنشاء المعالجات كلما تم تعديل التسلسل، بحيث يكون لديهم دائمًا حالة جديدة. هذا أصلح خطأ الحالة. لكنه لا يعمل إذا تم تعديل الحالة عند رفع الفأرة. إنشاء معالجات جديدة من داخ
اقرأ أكثر →
لذلك كنت أواجه صعوبة في العثور على إجابة حول ما هو الصياغة الصحيحة لتمرير واجهة عامة عند استدعاء دالة تستقبل نوعًا عامًا.
ما أريد فعله هو const data=itemStore<T>(state => state.data)
import { create } from "zustand"; interfa اقرأ أكثر →
أريد إضافة وسط دائم (persist middleware) إلى useGlobalStore الخاص بي. أريد التعامل هناك (تعيين وجلب) البيانات لمخزن الجلسات. بحثت في الوثائق لكن لم أتمكن من العثور على إجابة حول كيفية دمج وظائف create و persist معًا.
إليك useGlobalStore الخاص بي:
interface اقرأ أكثر →
أحاول استخدام الوسيط persist في Zustand لتخزين واسترجاع الحالة في تطبيقي React. ومع ذلك، أواجه خطأ في TypeScript أجد صعوبة في حله. رسالة الخطأ هي كما يلي:
Argument of type 'StateCreator<ForestStore, [], [["zustand/persist", Fore اقرأ أكثر →
أريد وضع المستخدم المصادق عليه في متجر zustand. أحصل على المستخدم المصادق عليه باستخدام react-query وهذا يسبب بعض المشاكل. لست متأكدًا لماذا أفعل هذا. أريد أن يكون كل شيء متعلق بالمصادقة قابلاً للوصول من خلال هوك، لذلك فكرت أن zustand كان خيارًا جيدًا.
هذا هو الخطاف الذي يحصل على المستخدم المصادق عليه:
const getAuthUser = async () => { const { data } = await axios.get<AuthUserResponse>(`/auth/me`, { withCredentials: true, }); return data.user; }; export اقرأ أكثر →
عند جلب الحالة من API باستخدام Zustand داخل دالة useEffect، ما هي أفضل الممارسات للقيام بذلك؟ حالياً أنا أستخدمها بطريقة بسيطة جداً:
export interface ModeState{ modes: Mode[]; fetchModes: () => void; } export const useModeStore = create<ModeState>((set) => ({ modes اقرأ أكثر →
لدي هذا المتجر البسيط
interface CartState { cart: { [id: string]: CartDto }; addItem: ({ id, image, name, price }: Omit<CartDto, "quantity">) => void; removeItem: (id: string) => void; reset: () => void; } export const useCart = create<CartState>((set, get) => ({ car اقرأ أكثر →