【问题标题】:Ionic Cordova build fails with 'toLowerCase' of undefinedIonic Cordova 构建失败,“toLowerCase”未定义
【发布时间】:2020-02-25 20:25:53
【问题描述】:

我在 OSX 上构建的 Ionic 应用程序突然开始失败并出现以下错误。我什么都没做,除了 Xcode 更新。我这边没有代码更改。我恢复到以前的生产版本并尝试从那里重建,但同样的错误。

代码没有变化说明构建过程中断

  1. 我应该恢复到以前的 Xcode 版本(但是如何?)。
  2. 我应该更新 Ionic / Cordova 吗?很可能会这样做。
  3. 我是否应该再次检查我的项目并重新构建 文件夹?

我从其他帖子中看到,它可能是一个承诺问题,它试图解决一个有问题的对象的承诺。

Cannot read property 'toLowerCase' of undefined
TypeError: Cannot read property 'toLowerCase' of undefined
    at /Users/me/app/platforms/ios/cordova/lib/list-emulator-build-targets:54:45
    at Array.forEach (<anonymous>)
    at /Users/me/app/platforms/ios/cordova/lib/list-emulator-build-targets:52:44
    at Array.reduce (<anonymous>)
    at /Users/me/app/platforms/ios/cordova/lib/list-emulator-build-targets:50:57
    at Array.reduce (<anonymous>)
    at /Users/me/app/platforms/ios/cordova/lib/list-emulator-build-targets:45:28
    at _fulfilled (/Users/me/app/platforms/ios/cordova/node_modules/q/q.js:854:54)
    at /Users/me/app/platforms/ios/cordova/node_modules/q/q.js:883:30
    at Promise.promise.promiseDispatch (/Users/me/app/platforms/ios/cordova/node_modules/q/q.js:816:13)
ionic --version
4.10.3

"cordova-android": "7.1.4",
"cordova-ios": "4.5.5",

Xcode v 11.1

【问题讨论】:

  • 如果您可以构建您的项目,您可以签入 xcode 吗?有时此错误来自签名配置文件。尝试查看您在签名和功能选项 (xcode) 中是否有错误。
  • 谢谢。我稍后再试试。
  • 是的,我仍然可以构建项目。它在复制阶段后失败,所以我可以假设它已被正确复制?代码被混淆了,很难说我所做的更改。添加视觉变化作为指标。无论如何,如果事实证明它有效,这不是一个好的解决方案。
  • 更改被复制,但整个调试构建过程失败。现在可以,但会寻找解决方案。

标签: ios xcode cordova ionic-framework ionic3


【解决方案1】:

显然 xcode 11 与文件 list-emulator-build-targets 中的验证存在一些冲突。 您需要执行此命令。

ionic cordova platform rm ios
ionic cordova platform add ios@latest

确保您获得的是 cordova-ios 版本 >= 5.0.0

【讨论】:

    猜你喜欢
    • 2018-06-07
    • 1970-01-01
    • 1970-01-01
    • 2019-06-01
    • 2019-09-25
    • 1970-01-01
    • 2016-09-19
    • 2020-01-24
    • 2019-07-28
    相关资源
    最近更新 更多