ไม่ได้รับการดูแล ดูโพสต์ mortem

เพิ่มการแชทแบบเรียลไทม์ชั่วคราวที่ไม่ระบุชื่อในหน้าเว็บใด ๆ
Disco.Chat เพิ่มการแชทแบบเรียลไทม์แบบไม่ระบุชื่อในหน้าเว็บใด ๆ มันเป็นส่วนหนึ่งของการแชทของ Twitch และวิดเจ็ตแชทบริการลูกค้าของ Intercom

แชทโดยไม่เปิดเผยตัวตนและทำให้เกิดความผิดพลาดกับผู้อ่านคนอื่น ๆ
แม้ว่าฉันจะปรับใช้สิ่งนี้ในบทความหนึ่งในบล็อกของพ่อ แต่ ฉันก็หยุดทำงานในโครงการด้านนี้ บริษัท ที่เรียกว่า spot.im ทำสิ่งเดียวกัน
นี่เป็นครั้งแรกที่ฉันเขียน JS ของบุคคลที่ 3 ซึ่งทำงานร่วมกับ IFRAMES และ WebSockets มีรหัสบางส่วนที่ฉันภูมิใจเป็นพิเศษซึ่งคุณอาจพบว่ามีประโยชน์:
web/sdk/disco.js การเปลี่ยนแปลงสถานะการเปลี่ยนแปลงทั่วทั้งแอพและวิดเจ็ต (แอพ React และ Preact แยกต่างหาก)web/src/App.tsx twitter lite เทคนิค div + flexbox สำหรับเค้าโครงแชท รากของโครงการคือ API ในขณะนี้ แหล่งที่มาสามารถพบได้ใน ./src src
ใน ./web คุณจะพบแอปพลิเคชันการแชท React X TypeScript และใน web/sdk/disco.js คุณจะพบ JS บุคคลที่สาม งาน Watch Rollup (เส้นด้าย sdk ) จะส่งออก SDK JS ไปยังไดเรกทอรี ./web/public public (นี่คือไดเรกทอรี public ของแอพ Create-react-app) ดังนั้นจึงให้บริการโดย localhost:3000/disco.dev.js Webpack Dev ของ react-scripts-ts
yarn install && cd web && yarn install && cd .. เปิด 3 แท็บเทอร์มินัล ....
yarn start # 1. start the API
cd web
yarn start # 2. start the application (chat UI)
yarn sdk # 3. develop the sdk (./web/sdk/disco.js) คุณสามารถพัฒนาแอพแชทได้ที่ localhost:3000 อย่างไรก็ตามคุณสามารถได้รับประสบการณ์ผู้ใช้ปลายทางเต็มรูปแบบโดยไปที่ localhost:5000 และ localhost:5000/about ระหว่างการพัฒนา สิ่งเหล่านี้ให้บริการหน้า 2 html ./public/about.html และ ./public/index.html สิ่งเหล่านี้มีไว้เพื่อเลียนแบบวิธีการใช้ SDK โดยไซต์ของบุคคลที่ 3 อย่าลังเลที่จะเปลี่ยนแปลงพวกเขาตามที่คุณต้องการจำลองการใช้งานในโลกแห่งความเป็นจริงมากขึ้น