ฉันกำลังเรียนรู้ React.js และฉันประสบปัญหาต่อไปนี้:
แอปโต้ตอบของฉันหยุดทำงานหลังจากเพิ่ม createBrowserHistory ด้วย Saga
โดยพื้นฐานแล้ว ฉันต้องการเปลี่ยนเส้นทางผู้ใช้ไปยังหน้ารถเข็น (/cart) เมื่อฉันคลิกที่ปุ่มเพิ่มลงตะกร้า
ตัวอย่าง:
นั่นคือหน้าแรก:
เมื่อฉันคลิกที่ปุ่ม Add to Cart ระบบจะนำทางไปยังเส้นทาง /cart อย่างไรก็ตาม มันไม่แสดงอะไรเลย และไม่มีข้อผิดพลาดในคอนโซล
ฉันได้ทำการเปลี่ยนแปลงต่อไปนี้ในรหัสของฉัน:
เพิ่มแพ็คเกจประวัติ:
ไฟล์ประวัติที่สร้างขึ้น:
ไฟล์ App.js ที่เปลี่ยนแปลง:
ไฟล์ Saga ที่เปลี่ยนแปลง ฉันคาดว่าจะนำทางไปยังเส้นทาง /cart หลังจากทำงานบางอย่าง...
ปัญหาอยู่ที่นี่แล้ว! ฉันต้องการแก้ไขปัญหาในไฟล์ Saga ของฉันเท่านั้น
ฉันได้สร้าง Pull Request ที่นี่ เพื่อสร้างข้อผิดพลาดซ้ำ อย่าลังเลที่จะดูสิ่งนี้
https://github.com/willianfalbo/online-shoes-app/pull/1
ฉันยินดีที่จะให้รางวัลคนที่สร้าง PR ให้ฉัน ฉันจะยอมรับคำตอบของคุณที่นี่ด้วย!
createBrowserHistory
ประวัติตั้งแต่แรก? เมื่อredux-saga
ของคุณทำการเรียกapi
และหลังจากประสบความสำเร็จ จะดีกว่าไหมถ้าคุณคืนการควบคุมไปยังส่วนประกอบ React ของคุณเพื่อดำเนินการในภายหลัง หมายความว่าคุณสามารถเปลี่ยนเส้นทางในReact component
ของคุณแทนในsagas
ได้อย่างง่ายดาย ซึ่งจะทำให้การใช้createBrowserHistory
เป็นโมฆะตั้งแต่แรก.. - person Prateek Thapa   schedule 22.08.2020yield call(history.push, '/cart');
- person Aleksey L.   schedule 22.08.2020MemoryHistory
และดูว่ายังคงใช้งานไม่ได้ในบริบทนั้นหรือไม่ ไม่ใช่วิธีแก้ปัญหา แต่อาจอธิบายบางสิ่งบางอย่างให้กระจ่าง - person Slbox   schedule 04.09.2020createBrowserHistory
ให้นำเข้าcreateMemoryHistory
เรายังอยู่ที่[email protected]
แต่ฉันคิดว่ามันน่าจะยังใช้งานได้ใน5.x
- person Slbox   schedule 04.09.2020