【发布时间】:2018-08-17 05:24:01
【问题描述】:
使用socket.io,以及它的documentation,在安装和需要模块socket.io之类的时候,
您也可以在浏览器中加载客户端库,例如,
无需配置任何特定的构建链,或运行 Browserify 命令或其他任何东西。
他们是怎么做到的?
【问题讨论】:
标签: javascript node.js browser browserify
使用socket.io,以及它的documentation,在安装和需要模块socket.io之类的时候,
您也可以在浏览器中加载客户端库,例如,
无需配置任何特定的构建链,或运行 Browserify 命令或其他任何东西。
他们是怎么做到的?
【问题讨论】:
标签: javascript node.js browser browserify
它们为库的客户端和服务器版本提供单独的存储库。
服务器端版本是这样的:https://github.com/socketio/socket.io 这是客户:https://github.com/socketio/socket.io-client
他们使用 Gulp 脚本来构建位于 dist 文件夹中的独立 JS 文件。您可以查看gulpfile 了解详情。
当您以 CommonJS 方式加载客户端时,文件 lib/index.js 正在被加载,因为它在 package.json 中被提及为 main/entry 脚本,就像这样 "main": "./lib/index"
我希望这能回答你的问题
【讨论】:
package.json 中看到这一点。然后它会自动为这个客户端库提供服务。代码在第 105 行,https://github.com/socketio/socket.io/blob/master/lib/index.js