【iOS13+Swift5.1+Xcode11~SwiftUI】Closure containing a declaration cannot be used

Closure containing a declaration cannot be used with function builder 'ViewBuilder'

HStack{
            //...
            let lebus = "iOS超級大講師"
            //...
        }
複製代碼

錯誤緣由:

SwiftUI中StackView(HStack,VStack,ZStack)的底層目前只支持if和else語句,若是在StackView裏面寫了 let 等其餘語句,編譯器就會報上述錯誤。bash

(之後說不定會支持)ui

解決方法:

把除了if,else以外的語句想辦法放在body外面的某個計算屬性裏面。spa

相關文章
相關標籤/搜索