1 คะแนน โดย kwan03240324 2026-03-20 | ยังไม่มีความคิดเห็น | แชร์ทาง WhatsApp

ลอจิกสำหรับจัดการสถานะ online/offline ในแอปฝั่งฟรอนต์เอนด์ ดูเหมือนจะแทรกซึมเข้าไปอยู่ในบิสสิเนสลอจิกบ่อยกว่าที่คิดครับ

พอลงมือทำจริง โค้ดอย่าง navigator.onLine, event listener ของ online/offline, การแยกเงื่อนไข retry, หรือการจัดการ action ในสถานะ offline มักกระจัดกระจายอยู่ตามจุดต่าง ๆ ได้ง่าย และยิ่งเวลาผ่านไปก็ยิ่งจัดการให้สอดคล้องกันได้ยากขึ้น

การรองรับสถานะออฟไลน์มักถูกเลื่อนความสำคัญออกไปเสมอ และยิ่งทุกวันนี้ความเร็วในการพัฒนาฟีเจอร์ด้วย AI สูงขึ้น ผมยิ่งรู้สึกว่าสิ่งสำคัญคือการยกระดับเพดานล่างของประสบการณ์ใช้งานผลิตภัณฑ์ไปพร้อมกัน เพื่อให้ยังคงรักษาประสบการณ์ขั้นต่ำไว้ได้แม้อยู่ในสภาพแวดล้อมเครือข่ายที่ไม่ดี

เพราะอยากจัดการปัญหานี้ให้สะอาดขึ้นอีกหน่อย เลยสร้างโอเพนซอร์สชื่อ connectivity-js ขึ้นมาครับ

  • การควบคุมสถานะเครือข่ายแบบประกาศเชิง declarative
  • core แบบ framework-agnostic + React adapter
  • offline action queue
  • deduplication / backoff retry

GitHub
https://github.com/minseong0324/connectivity-js

ตอนนี้ยังเป็นเวอร์ชัน 0.x อยู่ จึงยังมีอีกหลายส่วนทั้งการติดตั้งภายในและการออกแบบ API ที่จะค่อย ๆ ปรับปรุงต่อไป หากคุณเคยเจอปัญหาคล้ายกันหรือมีไอเดียในการปรับปรุง
ยินดีรับทั้ง feedback, issue และ PR ครับ

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น