我正在使用 Ionic/Angular/Capacitor 创建一个应用程序。我的应用程序已经编译和构建良好一段时间了。我能够在 Xcode 模拟以及我的 iPhone 上构建并运行该应用程序。然而,我最近弹出了一个 Xcode 更新的窗口,我下意识地单击了“确定”,而没有太注意我所做的事情。这是多么愚蠢的事情啊!!!现在,我在代码的此区域收到“Swift 编译器错误 - 源文件中的编辑器占位符 - CAPBridge.swift”的电容器构建时错误:
public func modulePrint(_ plugin: CAPPlugin, _ items: Any...) {
let output = items.map { "\($0)" }.joined(separator: " ")
CAPLog.print("⚡️ ", plugin.pluginId ?? <#default value#>, "-", output)
}
在 Xcode 编辑器上,代码的“<#default value#>”部分被替换为灰色框,其中的“默认值”文本带有错误消息“源文件中的编辑器占位符”。我是我不是 Swift 程序员,无法找到现在出现此错误的任何原因,也无法找到修复它的方法。我在电容器论坛上发布了同样的问题。但是,我希望有人会认识到“<#default value#> 语法或了解 Xcode 中最近发生的任何可能导致此类错误的更改。
还有一个观察结果。为了确保这一点,我在尝试再次在 Xcode 模拟器上运行应用程序之前执行了 Clean 操作。当我执行“产品”->“清理构建文件夹”时,清理完成后出现了不同的 Swift 编译器错误。我在 CAPBridge.swift 中收到“没有这样的模块‘Cordova’”。此错误将消失并被“源文件中的编辑器占位符”错误所取代。顺便说一句,我使用的是 Capacitor 而不是 Cordova,并且过去在一切运行良好的情况下从未进行过 Clean 操作。因此,我不确定“No such module 'Cordova'”错误是否一直存在于 Clean 操作中。
以下是运行 ionic info 的输出,以显示我当前的运行环境:
Ionic:
Ionic CLI : 6.12.0 (/Users/francistse/.nvm/versions/node/v10.16.3/lib/node_modules/@ionic/cli)
Ionic Framework : @ionic/angular 5.0.0
@angular-devkit/build-angular : 0.803.25
@angular-devkit/schematics : 8.3.25
@angular/cli : 8.3.25
@ionic/angular-toolkit : 2.1.2
Capacitor:
Capacitor CLI : 2.4.2
@capacitor/core : 2.4.2
Cordova:
Cordova CLI : 9.0.0 (<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="35565a47515a435418595c57750c1b051b04" rel="noreferrer noopener nofollow">[email protected]</a>)
Cordova Platforms : none
Cordova Plugins : no whitelisted plugins (1 plugins total)
Utility:
cordova-res (update available: 0.15.2) : 0.15.1
native-run : not installed
System:
NodeJS : v10.16.3 (/Users/francistse/.nvm/versions/node/v10.16.3/bin/node)
npm : 6.14.5
OS : macOS Catalina
Xcode : Xcode 12.2 Build version 12B5025f
最佳答案
您可以通过替换 <#default value#>
来解决编译器错误与 "n/a"
.
关于ios - "Editor placeholder in source file"CAPBridge.swift 中的 Swift 编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65082413/