【问题标题】:Ionic v1 app not working properly in ipad while it works on other devicesIonic v1 应用程序在 ipad 中无法正常运行,而在其他设备上运行
【发布时间】:2017-08-31 11:58:56
【问题描述】:

我面临一个最奇怪的问题。我的 ionic v1 应用程序在 android 和 iphone 中运行良好,但在 ipad 中无法正常运行。我的应用程序有四个选项卡,其中一个选项卡是主页,它加载绑定了“HomeController”的“主页”视图,但不知何故,当应用程序在 ipad 中运行时该控制器无法加载,即 angularjs 无法找到“HomeController”。

以下是显示“HomeController”错误的 Xcode 日志截图。

正如我们在上面的 Xcode 日志截图中看到的,angularjs 无法找到并加载“HomeController”。

我还检查了名称中的任何大小写错误,同时在 index.html 中包含“HomeController.js”文件也是正确的。我还检查了任何依赖注入错误,但如果不是,那么一切都是正确的,那么应用程序会不在任何设备上运行。

下面是配置信息-

@ionic/cli-utils  : 1.9.2
ionic (Ionic CLI) : 3.9.2

全局包:

Cordova CLI : 7.0.1
Gulp CLI    : not installed globally

本地包:

Cordova Platforms : android 6.2.3 ios 4.4.0
Ionic Framework   : ionic1 1.3.1

系统:

Node  : v6.11.2
npm   : 3.10.10
OS    : macOS Sierra
Xcode : Xcode 8.3.3 Build version 8E3004b

Ipad的ios版本:-9.3.5

谢谢。

【问题讨论】:

  • 检查文件名。有时文件名中的大写和小写字符会导致此类问题。
  • 感谢@MithunSen 的回复,正如我已经提到的问题,我已经检查了文件名中的大小写错误以及 angularjs 中的任何 DI 错误,但事实并非如此。如果有任何错误,那么该应用程序将无法在任何其他设备上运行。

标签: ios angularjs ionic-framework


【解决方案1】:

经过这么多的谷歌搜索和调试,我终于找到了问题所在。主要问题是我使用'let'在'严格模式'下声明变量,我无法看到问题,因为缺少xcode来显示详细日志。

为了显示适当的错误消息,我在加载任何 javascript 文件之前放在 index.html 中的代码下方。

index.html

<script type="text/javascript">
window.onerror = function (errorMsg, url, lineNumber) {
  alert('Error: ' + errorMsg + ' Script: ' + url + ' Line: ' + lineNumber);
}
</script>

我特别感谢karma在这个answer上面的代码

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-09
    • 1970-01-01
    • 2020-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多