[英]Files in Swift Package out of scope
我使用與該項目相關的 swift 包(我們稱之為“Foo”)創建了一個基本項目。
我嘗試從AppDelegate
的Foo().text
打印“hello world”,但出現錯誤:
"Cannot call value of non-function type 'module<Foo>' "
然后我嘗試向這個 package 添加一個新結構或 class 並且我收到一個錯誤: "Cannot find {ObjectName} in scope"
Foo 內的測試全部通過。 看起來我錯過了一些步驟。
您可能忘記將 Swift Package 導入AppDelegate
。 嘗試將 package 的等效項放在AppDelegate
的頂部。
import Foo
根據這個Github 問題,(如果您使用的是 CocoaPods,您沒有在問題中說明。)您必須將 ZEFE90A8E604A7C840E88ZD03A67F6B78D 中的類/結構公開。
您可能還必須像這樣嘗試:
Foo.bar()
Foo
是您的 package 名稱, bar
是 class 或其中的結構。
不要將模塊與公共 class(或結構)混淆。 這就是你在這里所做的事情:
我使用與該項目相關的 swift package(我們稱之為“Foo”)創建了一個基本項目,並嘗試從
Foo().text
打印“hello world”
說Foo()
意味着有一個名為 Foo 的公共類/結構。 在那兒? 我不這么認為。 您可能有一個名為 Foo 的package ,您可以將其import
。 但這並不意味着 Foo package 有一個名為 Foo 的公共 class(或結構) 。
例如,您可能會在 package 中看到:
struct Foo {
var text = "Hello, World!"
}
但這並不意味着您可以簡單地import Foo
然后談論Foo().text
,因為這個 Foo 不是公開的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.