对科尔多瓦来说绝对是新的。这些是我完成的步骤:
- 签出现有项目
- 运行
cordova build ios
上述内容生成此构建错误:
(节点:10242( 未处理的承诺拒绝警告:错误 [ERR_UNHANDLED_ERROR]:未处理的错误。(平台"ios"似乎不是有效的科尔多瓦平台。它缺少 API .js。不支持 iOS。
我已经在谷歌上搜索了上述解决方案,普遍的共识似乎是删除然后添加iOS平台。
现在有一个问题。查看提交历史记录,我可以看到对platforms
目录中的文件进行了代码更改,所以我不能只是删除它,或者......
问题1(我可以吗?
问题2(在platforms
目录中进行代码更改是否正确?因为看起来那些是生成的目录。
问题3(为什么当我在platforms/ios
下打开 Xcode 项目时,尽管上面有 Cordova CLI 错误,我仍然能够很好地构建/运行它?
手动编辑平台文件是不对的。一些手动更改可能会使项目无法生成,因此可能与某人所做的手动更改有关。因此,如果您不想冒险删除平台,请继续从 Xcode 构建。
从根www
到platforms/ios
由Cordova命令传输,例如我们cordova prepare ios
或cordova build ios
或cordova run ios
。
因此,如果您由于该错误而无法执行cordova prepare ios
,则可以尝试一些方法。
-
将文件从
www
复制到platforms/ios
,而无需替换整个文件夹,只需替换重复的文件。cordova prepare ios
不仅仅是一个副本,它还会进行一些修改/修改,但是如果您不删除现有文件,它可能会起作用。 -
创建一个新项目并将
platforms/ios/cordova
复制到您自己的项目中,看看是否可以解决上述问题,因为这就是 Api.js 文件所在的位置。 -
降级 Cordova CLI,尝试使用最新的 7.x.x,如果它不起作用,请尝试使用最新的 6.x.x,其中一个不需要 Api.js因为它相对较新。