为什么在 javascript 中我无法在此函数中创建对象?

why in javascript i cant create object in this function?

我在函数中创建对象时遇到问题 我知道它是一个无效函数,但我不需要 return 任何数据

let btnConnect = document.getElementById('connect')
let btnConnectedDrive = document.getElementById('ConnectedDrive')

function createPeer() {
    let myPeer = new Peer()
    console.log(myPeer.id)
    let socket = new WebSocket('ws://' + window.location.host + '/ws/myapp/room/' + game_id + '/');
    socket.onopen = () => socket.send(JSON.stringify(
        {
            'username': user,
            'PeerId': myPeer.id
        }
    ),)

}

btnConnect.onclick = () => createPeer();

现在,当我登录 myPeer.id 时,它的 null 和服务器上的一样 你认为解决方案是什么? 希望你过得愉快。

参见the documentation

Other peers can connect to this peer using the provided ID. If no ID is given, one will be generated by the brokering server.

以及示例:

 peer.on('open', function(id) {
   console.log('My peer ID is: ' + id);
 });

它没有 ID,因为您还没有等待它连接到代理服务器并获得 ID。