Ich arbeite an React.js und socket.io. Meine Anwendung besteht aus mehreren Containern. Jeder Container hat Komponenten.Wo soll das Socket-Objekt in React Containern initialisiert werden?
Mein Behälter und Komponentenhierarchie
- Armaturenbrett
- Chat
- ChatListItem
- CustomerChatView
Also hier Armaturenbrett und Chat ein re zwei getrennte Container, die in separaten js-Dateien definiert sind. Ich möchte das websocket-Objekt zwischen Dashboard- und Chat-Nachrichten teilen, sodass das Dashboard dem Benutzer eine Warnmeldung anzeigen kann, wenn eine neue Chat-Nachricht im Chat-Container vorhanden ist.
Meine Frage ist, was der am besten geeignete Ort ist websocket zu initialisieren, so dass das gleiche Socket-Objekt kann in den beiden Behältern verwendet werden?
Ich bin mit socket.io JavaScript-Bibliothek
Am zweiten Gedanken würde ich wahrscheinlich immer noch die Sockel in componentWillMount initialisieren, aber ich würde die Referenz in einem separaten eigenen Modul speichern, die vielleicht nur eine API, mit ihm zu arbeiten, ausgesetzt. Ihr Speicherstatus sollte serialisierbar sein, und das Speichern eines Sockets würde wahrscheinlich nicht so aussehen. – John