gpt4 book ai didi

Javascript/NodeJS/Express 范围混淆

转载 作者:行者123 更新时间:2023-11-30 16:39:24 24 4
gpt4 key购买 nike

我正在浏览这个存储库,注意到作者在 app.js 中声明了一个变量 (io) :

/* Socket.io Communication */
var io = require('socket.io').listen(server);
io.sockets.on('connection', socket);

他在public/js/app.js中再次引用变量,但似乎根本没有像我通常期望的那样引用外部 javascript 文件,所以我很惊讶这不会导致 ReferenceError。

有人可以为我解释一下这个例子是什么允许对 io 的外部引用起作用吗?非常感谢。

最佳答案

public/js/app.js 是客户端 javascript,将在浏览器中运行。如果您查看 index.html,您会看到 socket.io 的客户端版本包含在底部,它定义了一个全局 io 变量。

https://github.com/DanialK/ReactJS-Realtime-Chat/blob/master/public/index.html#L12

关于Javascript/NodeJS/Express 范围混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32230907/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com