我很抱歉我是 Swift 的新手,并且可能完全錯了。
我試圖在我的視圖中呼叫我的結構上的變異函式來添加額外的電話或電子郵件。這是我的結構。
struct CreateCustomer: Codable {
var Phone: [CustomerPhone]
var Emails: [String]
init() {
Phone = [CustomerPhone()]
Emails = []
}
public mutating func addPhone(){
Phone.append(CustomerPhone())
}
public mutating func addEmail(){
Emails.append("")
}
}
struct CustomerPhone: Codable {
var Phone: String
var PhoneType: Int
init(){
Phone = ""
PhoneType = 0
}
}
我正在嘗試使用以下內容將電話添加到我的狀態變數中
Button("Add Phone"){
$Customer_Create.addPhone()
}
我收到以下錯誤
不能呼叫非函式型別'Binding<()->()>'的值動態鍵路徑成員查找不能參考實體方法'addPhone()'
感謝您的任何幫助!
uj5u.com熱心網友回復:
如果Customer_Create是狀態屬性變數(如下所示)則不需要系結,直接使用屬性
struct ContentView: View {
@State private var Customer_Create = CreateCustomer()
var body: some View {
Button("Add Phone"){
Customer_Create.addPhone() // << here !!
}
}
}
uj5u.com熱心網友回復:
你不應該訪問Bindingvia $,你應該簡單地訪問屬性本身。
Button("Add Phone"){
Customer_Create.addPhone()
}
與您的問題無關,但您應該遵守 Swift 命名約定,即變數和屬性的 lowerCamelCase - so customerCreate, not Customer_Create。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/454094.html
