带有require.js async和io的Socket.io未定义
Socket.io with require.js async and io is undefined
有人能向我解释一下为什么这样做吗:
<script src="//cdn.socket.io/socket.io-1.0.4.js"></script>
<script>
var socket = io('http://nodeapp.herokuapp.com');
console.log(socket);
</script>
但这不起作用:
<script async src="//cdn.socket.io/socket.io-1.0.4.js"></script>
<script>
var socket = io('http://nodeapp.herokuapp.com');
console.log(socket);
</script>
错误为:
Uncaught ReferenceError: io is not defined
或者我如何用require.js在客户端附加socket.io库,在这种情况下可以正常工作(没有上面的错误(。
<script async ...
您明确要求浏览器在获得脚本之前不要等待。
因此,它不需要等到脚本被获取并执行后才进入下一个脚本。因此,当你进入时,io
还没有定义
var socket = io('http://nodeapp.herokuapp.com');
脚本异步上的MDN
相关文章:
- 为什么“;未定义的“;在JavaScript中结束循环
- 要求未定义JS回调参数
- Socket.IO未定义变量
- Node.js-socket.io-对io.sockets的引用突然未定义
- WebRTC,socket.io,node.js:无法读取属性'发射'的未定义
- socket.io - 引用错误:未定义 io
- Socket.io“侦听器未定义”
- 'io未定义'在客户端上.在HTML中包含socket.io脚本标记
- 未捕获的类型错误: 无法读取未定义 Phaser.io 的属性“补间”
- 节点.js socket.io.js找不到或未定义 io
- 未定义 socket.io 错误不是函数
- ReferenceError:io未在NodeJS中定义
- 将socket.io/socket.io.js加载到html头中返回"ReferenceError:io未定义
- 类型错误:this.io是未定义的套接字.io.js:639
- 套接字.io抛出" TypeError: Cannot read property 'push'未定义的
- 不能读取property 'emit'使用React/Socket.IO的未定义错误
- 带有require.js async和io的Socket.io未定义
- Socket.IO命名空间,调用未定义的函数.of()
- 未捕获的类型错误:无法读取未定义的 sails.io.js 的属性“原型”
- 套接字.io ReferenceError客户端未定义