Javascript 带有require.js async和io的Socket.io未定义

Javascript 带有require.js async和io的Socket.io未定义,javascript,node.js,socket.io,requirejs,socket.io-1.0,Javascript,Node.js,Socket.io,Requirejs,Socket.io 1.0,有人能给我解释一下为什么这样做: <script src="//cdn.socket.io/socket.io-1.0.4.js"></script> <script> var socket = io('http://nodeapp.herokuapp.com'); console.log(socket); </script> 或者我如何在客户端使用require.js附加socket.io库,在这种情况下,

有人能给我解释一下为什么这样做:

 <script src="//cdn.socket.io/socket.io-1.0.4.js"></script>
 <script>
        var socket = io('http://nodeapp.herokuapp.com');
        console.log(socket);
 </script>
或者我如何在客户端使用require.js附加socket.io库,在这种情况下,它可以正常工作(上面没有错误)


如果我稍后在控制台中尝试连接,错误仍然存在。真正的问题是,为什么加载require.js的socket.io(1.0.x)在全局范围内不可用?对于版本0.9,一切都正常…如果我稍后在控制台中尝试连接,错误仍然存在。真正的问题是,为什么加载require.js的socket.io(1.0.x)在全局范围内不可用?在版本0.9中,一切都正常运行。。。
 <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 
<script async ...
var socket = io('http://nodeapp.herokuapp.com');