Попытка быстро передать массив словарей из одного представления во второе представление

Пытаюсь передать массив словарей из представления A во второе представление B в Swift.

В представлении A использую скрытую навигационную ссылку в представлении, чтобы отправить представление B и отправить arrayMergeT100 в представление B

Представление B пытается получить доступ к значениям для ключа "synopsis" и получает две ошибки в этой строке "if let index = bookOptions.index(forKey: "synopsis") {". Ошибка 1 - Неправильная метка аргумента в вызове (есть 'forKey:', ожидалось 'where:') и Ошибка 2 - Невозможно преобразовать значение типа 'String' в ожидаемый тип аргумента '([String : Any]) выдает -> Bool'. Изменение forKey: на where: не приводит к исчезновению Error2

@State var arrayMergeT100 = [[String:Any]]()

NavigationLink(destination:ShowBookChoices(bookOptions: self.$arrayMergeT100),
           isActive: self.$pushActive) {
             EmptyView()
        }.hidden()
struct ShowBlindDateChoices: View {
    @Binding public var bookOptions: [[String:Any]]
    var body: some View {
                VStack{
                    if let index = bookOptions.index(forKey: "synopsis")  {
                        let _ = print(bookOptions[index].key, ":", bookOptions[index].value)
                    }
Клавдий
Вопрос задан17 августа 2024 г.

1 Ответ

2
Ипатий
Ответ получен8 сентября 2024 г.

Ваш ответ

Загрузить файл.