#reactjs #websocket #next.js #peer
Вопрос:
Насколько мне дано понять, я не могу определить websocket
ни снаружи, ни peer
снаружи useEffect
. так что у меня есть
pc = new RTCPeerConnection()
pc.dcm = pc.createDataChannel("channel")
внутри useEffect
.
Однако таким образом я не могу передать их как props
другие элементы, учитывая, что они есть async
.
Я также не могу использовать a react state
для передачи обновленного значения, потому что тогда я не смогу использовать их внутри useEffect
, так как состояние будет отображаться как его начальное значение все время внутри useEffect
.
Как передать определенные Websocket
или Peer
другие элементы вниз как props
?
Комментарии:
1. Рассматривали ли вы возможность использования контекста React , чтобы сделать их доступными для нескольких компонентов?
2. @juliomalves Я не могу определить его вне useffect, так как я столкнусь со ссылкой, которая не определена.
3.Вы все еще можете получить доступ к нему внутри a
useEffect
и использовать контекст React для его передачи.4. @juliomalves, как вы знаете, useЭффект может получить доступ только к начальному значению состояния, поэтому я не могу передать его, если инициализирую их как состояние ( что, по-моему, в любом случае является плохой практикой ). У меня эта проблема только в Nextjs, а не в React в целом, потому что за пределами Nextjs я могу определить ее в корне и передать в качестве контекста, как вы упомянули.
5. Я не хотел приводить их в исходное состояние. Вы бы привели их в состояние внутри
useEffect
.