Как использовать плоский лист в ренатальном периоде?

У меня есть следующий список:

[flat-list {
                   :data [{:name "a"}
                          {:name "b"}
                          {:name "c"}]
                   :render-item (fn [item] [text (:name item)])
                   :key-extractor #(random-uuid)
                   }
        ]

Но это не работает и дает мне:

Invariant Violation: Objects are not valid as a React child (found: object with keys {name, id, class}). If you meant to render a collection of children, use an array instead.

Что я делаю неправильно?

-- РЕДАКТИРОВАТЬ --

Теперь у меня есть следующее:

        [flat-list {
                    :data [{:name "a"}
                          {:name "b"}
                          {:name "c"}]
                    :render-item (fn [item-]

                                   (r/reactify-component
                                    [text (:name item-)]
                                    ))
                    :key-extractor #(:name %)
                    :content-container-style {:align-items "center"}
                    }
         ]


Но получаю ошибку: Functions are not valid as a React child. This may happen if you returns a Component instead of <Component/> from render. Or maybe you meant to call this function rather than return it.

Вместо этого использование as-element не вызывает ошибки, но также не отображает текстовые компоненты.

1 ответ

Это просто потому, что renderItem ожидает реагирующего компонента

:render-item (fn [item] 
  (r/reactify-component [text (:name item)]))

:render-item (fn [item] 
  (r/as-element [text (:name item)]))
Другие вопросы по тегам