gpt4 book ai didi

javascript - Phonegap 是否在 3.5.0-0.20.10 版本中集成了 socket.io?

转载 作者:行者123 更新时间:2023-11-29 10:14:40 25 4
gpt4 key购买 nike

自从我将 PhoneGap 更新到版本 3.5.0-0.20.10 后,我的项目出现了问题。

当我运行 PhoneGap 服务时,我会在 cli 中看到;

[phonegap] 200 /socket.io/?EIO=2&transport=polling&t=.......

但我不使用 socket.io。使用 Chrome 开发人员工具,我看到在我的项目中有一个 socket.io 文件夹和一个 socket.io.js。所以我认为 PhoneGap 会自己导入它。

我的 RequireJS 现在有问题了:

Uncaught ReferenceError: io is not defined

我尝试删除 RequireJS,然后它可以工作,但我需要 RequireJS。一切都在旧版本 3.5.0-0.20.5 上完美运行

最佳答案

找到答案了...修改phonegap的node-modules目录下的consoler.js(一般是/usr/local/lib/node_modules/phonegap/node_modules/connect-phonegap/res/中间件) 通过 AMD 而不是直接加载 socket.io:

<!-- <script src="/socket.io/socket.io.js"></script> -->
<script>
(function(window) {
require(['/socket.io/socket.io.js'],function(io){
var socket = io('http://' + document.location.host);
var previousConsole = window.console || {};
window.console = {
log:function(msg){
previousConsole.log && previousConsole.log(msg);
socket.emit('console','log', msg);
},
warn:function(msg){
previousConsole.warn && previousConsole.warn(msg);
socket.emit('console','warn', msg);
},
error:function(msg){
previousConsole.error && previousConsole.error(msg);
socket.emit('console','error', msg);
}
}
});
})(window);
</script>

关于javascript - Phonegap 是否在 3.5.0-0.20.10 版本中集成了 socket.io?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25092516/

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