Получение объекта, неопределенного на бэкэнде в Socket.ioJavascript

Форум по Javascript
Ответить
Anonymous
 Получение объекта, неопределенного на бэкэнде в Socket.io

Сообщение Anonymous »

Я использую ReactJS вместе с Socket.io для создания приложения.
App.jsx

Код: Выделить всё

import { useState } from "react"
import io from "socket.io-client"
const socket = io.connect(SERVER_URL)

function convertToInt(str) {
if (parseInt(str)) {
return parseInt(str)
}
return 0
}

function App() {
const [inputValue, setInputValue] = useState(0)

return (


 { socket.emit("bid_send", inputValue); console.log(inputValue) }} onUpdateInput={(event) => setInputValue(convertToInt(event.target.value))}>

)
}

export default App

В приведенном выше файле (App.jsx) я включил только соответствующие части. Я исключил некоторые импорты моих локальных компонентов реагирования.
Проблема где-то в использовании мной функции socket.emit(). inputValue работает хорошо, и его состояние обновляется правильно, что подтверждается журналом консоли, который я прикрепил сразу после генерации сокета. inputValue всегда является целым числом.
index.cjs

Код: Выделить всё

const io = new Server(server, {
cors: {
origin: CLIENT_URL,
methods: ["GET", "POST"],
}
})
...
io.on("connection", (socket) => {
console.log("USER CONNECTED: " + socket.id)
player_info[socket.id] = [BALANCE]

socket.on("bid_send", (data) => {
console.log("Bid received " + toString(data) + " from " + socket.id)
server.emit("bid_receive", data)
})
})
server.listen(SERVER_PORT, () => console.log("SERVER RUNNING"))
Опять же, я включил только соответствующие части серверного кода. Когда консоль регистрирует ставку по bid_send, консоль сервера регистрирует:

Код: Выделить всё

Bid received [object Undefined] from KjfokBiktPq0P3-LAAAP
Поскольку журнал консоли на стороне клиента работает должным образом и каждый раз правильно создается уникальный идентификатор сокета, я склонен предположить, что проблема возникает где-то при передаче данных, но не могу понять, где и почему.

Подробнее здесь: https://stackoverflow.com/questions/798 ... -socket-io
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»