我在Cordova/www下创建了index.html文件。通过IOS模拟器运行它,只需这样做:
<!DOCTYPE html> <html> <head> <title>Title</title> </head> <body>
<h1>Hello World1</h1>
<h2>Test this out</h2>
<h2 id="test"></h2>
<script>
console.log("Test")
document.getElementById("test").innerHTML = "text string"
</script>
</html>
HTML输出在模拟器中显示,
还填充了“文本字符串”字符串--意味着启用了JS。但是,console.log("Test")不会出现在任何地方--不是在Xcode调试上,也不是在我从Safari运行的Debug中。
如何解决这个问题
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在Cordova应用中使用JavaScript的console.log
时,有时可能不会直接在Xcode的控制台或者通过Safari调试工具看到输出。这是因为Cordova应用在iOS模拟器或真实设备上运行时,其JavaScript日志处理方式与原生iOS应用有所不同。
要解决这个问题并查看console.log
输出,请按照以下步骤操作:
使用Safari开发者工具:
console.log
的输出应该会显示在这里。确保Cordova插件配置正确:
console.log
输出到Safari调试工具。但如果你发现仍然无法看到日志,检查你的Cordova项目是否包含了正确的WebView插件,尤其是对于较旧版本的Cordova,可能需要手动添加对cordova-plugin-console
的支持。不过,自Cordova 5.0.0起,此插件已包含在核心之中,一般无需单独安装。检查Cordova项目的config.xml:
<allow-navigation>
标签允许了调试连接。例如:
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
console.log
不显示的直接原因,但确保网络访问权限正确配置有助于避免其他潜在问题。重启模拟器和应用:
更新Cordova和相关插件:
如果以上步骤都尝试过了,但问题依旧存在,可能需要更详细地检查你的Cordova项目配置或考虑是否有特定于你应用环境的问题。