ค้นหาเว็บไซต์

typescript - ฉันจะจัดการกับ Zustand persist ในการทดสอบ Jest ของฉันได้อย่างไร?

ตอนนี้ผมกำลังสร้างแอป react native โดยใช้ Zustand สำหรับการจัดการสภาวะของผม Zustand มีความสามารถในการเก็บสภาวะลงใน storage ซึ่งในกรณีของผมคือ async storage ของ react native มันใช้งานได้ดี แต่เมื่อรันการทดสอบ ตัว persist wrapper ของ Zustand ทำให้ชุดทดสอบ jest ของผมล้มเหลว ตัวอย่างโค้ดง่ายๆ ของ state ใน Zust

อ่านต่อไป →

typescript - การพิมพ์เมธอด `set` จาก store ของ Zustand พร้อมมิดเดิลแวร์ Immer ในขณะที่ยังคงการเติมคำอัตโนมัติ

ฉันกำลังมีปัญหาในการพิมพ์เมธอด set จาก Zustand store ขณะใช้ Immer middleware ฉันจำเป็นต้องพิมพ์มันเนื่องจากคุณสมบัติบางอย่างมีฟังก์ชันที่ใช้ในการอัปเดตสถานะ ดังนั้นจึงต้องใช้ฟังก์ชัน set:

export const useStore = create<Store>()( immer((set, get) => ({ func: beginDraggingVertex(set, get, vertexID) })) ) .... function beginDraggingVertex(set: Setter, get: Getter, vertexID: string) { ...ommited set((store) => // here is wh

อ่านต่อไป →

reactjs - ฉันจะสร้างตัวห่อ hook ตัวเลือกของร้าน Zustand ใน Typescript ได้อย่างไร

ฉันกำลังพยายามใช้ Zustand แทน React Context เพื่อให้มีสถานะที่แชร์ร่วมกันระหว่างชุดย่อยของคอมโพเนนต์ และรูปแบบหนึ่งที่ฉันพบว่าตัวเองใช้บ่อยคือ selector แบบตื้นที่มีหลายคุณสมบัติ ดังนี้:

// store.ts interface State { data: object, setData: (newData: State[

อ่านต่อไป →

reactjs - ข้อผิดพลาดกับ Zustand และ Typescript เมื่อใช้ Persist ข้อผิดพลาดคือ: persist.d.ts(95, 210): ไม่มีการระบุอาร์กิวเมนต์สำหรับ 'options'

ฉันพยายามใช้ฟังก์ชันการเก็บข้อมูลถาวรโดยใช้ Zustand ตามรูปแบบในเอกสารของ Zustand สำหรับ Typescript แต่ฉันได้รับข้อผิดพลาดเมื่อเพิ่มเมธอด persist

ข้อผิดพลาดคือ persist.d.ts(95, 210): ไม่ได้ระบุอาร์กิวเมนต์สำหรับ 'options'

นี่คือตัวอย

อ่านต่อไป →

วิธีใช้ zustand devtools กับ typescript?

ฉันกำลังพยายามใช้ฟีเจอร์ devtools ของ zustand ฉันก็ใช้ TypeScript ด้วย เมื่อฉันส่ง store ไปที่ devtools โค้ดทั้งหมดของ store จะเกิดข้อผิดพลาดเป็น: Argument of type 'StateCreator<Store, [], [["zustand/devtools", never]], Store>' is not assignable to parameter of type 'StateCreator<Store, [], [], Store>'.

นี่คือรหัสร้านของฉัน:

const useUserStore = create<Store>(devtools((set) => ({ token: "", i

อ่านต่อไป →

reactjs - วิธีใช้ zustand สำหรับสถานะผู้ใช้ทั่วโลกใน next.js 13.4.9

ฉันมีโค้ดดังต่อไปนี้ในแอป Next.js 13.4.9 ของฉัน (ใช้ตัวจัดการเส้นทางแอป) และฉันไม่แน่ใจว่าจะใช้ zustand เพื่อจัดการสถานะการยืนยันตัวตนทั่วทั้งแอปอย่างมีประสิทธิภาพได้อย่างไร

ร้าน zustand

// /src/store/AuthStore.ts import { create } from 'zustand'; import { persist }

อ่านต่อไป →

typescript - การใช้ generics กับเมธอด create ของ zustand

ฉันมี zustand store ซึ่งเก็บรายการประเภท GridRow<T> สิ่งนี้แทนแถวที่ถูกเลือกในกริดหลัก ดังนั้นจึงใช้ Generics เพื่อแทนข้อมูลเฉพาะที่ใช้ในกริด

ฉันไม่แน่ใจว่าจะส่ง generic ไปยังเมธอด create ของสโตร์อย่างไร ฉันไม่สามารถห่อมันในฟังก์ชันอื่นได้เพราะมันจะสร้างสโตร์ใหม่ทุกครั้ง

inter

อ่านต่อไป →

reactjs - ฟังก์ชันสถานะของ zustand เพื่อเปลี่ยนคุณสมบัติหนึ่งของวัตถุ

ดังนั้นฉันกำลังใช้ Zustand กับ React ในแอป Electron ของฉัน ฉันใช้มันเพื่อดึงข้อมูลบางอย่างจากฐานข้อมูล Dexie ซึ่งเป็นเพียงรายการเดียวและบันทึกลงใน state ฉันกำลังพยายามที่จะเรียกใช้ฟังก์ชั่น set จากคอมโพเนนต์ render เพื่อที่จะเปลี่ยนแปลง state ของ property ที่เกี่ยวข้องใน state ใน React useState รหัสนี้

อ่านต่อไป →

reactjs - เพิ่มค่าลงในอาร์เรย์ภายในอ็อบเจ็กต์ในสถานะของ Zustand

ฉันกำลังเก็บวัตถุผู้ใช้ในสถานะของ Zustand และมันมีอาเรย์ที่เป็นรายชื่อภาพยนตร์โปรดของผู้ใช้ (ช่องว่างจะถูกแทนที่เมื่อเข้าสู่ระบบ) อย่างไรก็ตามด้วยสาเหตุบางประการ Zustand ไม่สามารถระบุวัตถุผู้ใช้ได้ โดยกล่าวว่ามันไม่มีอยู่เมื่อฉันพยายามใช้มันในฟังก์ชัน setFavoriteMovie แต่คุณสามารถเห็นได้ชัดว่ามันอยู่

อ่านต่อไป →

reactjs - วิธีการสลับโดยใช้ Zustand

ฉันได้สร้างร้านค้าต่อไปนี้โดยใช้ Zustand:

import create from "zustand" const useStore = create((set) => ({ show: false, toggleShow: () => set((state) => ({ show: !state.show })), }))

ฉันสันนิษฐานว่านี่จะเป็นวิธีที่ถูกต้องในการสลับค่าของ show อย่างไรก็ตาม TypeScript ไม่พอใจ -- มันมีเส้นหยักสี

อ่านต่อไป →