Я пытаюсь отобразить React Native ListView в реагенте.Свойство источника данных не распространяется от реагента к методу рендеринга компонента React Native ListView.
У меня есть следующий фрагмент кода:
(def data-source
(React.ListView.DataSource. #js{:rowHasChanged (fn [a b] false)}))
(defn render-row []
[ui/view])
(def rows
(clj->js ["whoa", "hey"]))
(defn main-scene []
(fn []
[ui/list-view {:render-row render-row
:data-source (.cloneWithRows data-source rows)}]))
Вышеприведенные приводит к «Failed propType:. Обязательный реквизит dataSource
не был указан в ListView
Проверьте рендер метод app.ios.ui.main_scene
.» За ним следует «Невозможно прочитать свойство» rowIdentities «undefined», поскольку источник данных не определен внутри метода рендеринга ListView.
Мое первое предположение заключалось в особой трактовке атрибутов «data-» где-то внутри внутренних или реагентных или икота или что-то в этом роде, но я не мог найти ни малейшего понятия, почему свойство не распространяется должным образом.
И, yep, (.cloneWithRows data-source rows)
фактически возвращает действительный экземпляр объекта ListViewDataSource.
И потом, если я прохожу :data-source
, как :dataSource
все, что я получаю загадочное «StaticRenderer.render():. Действительное ReactComponent должны быть возвращены Вам, возможно, вернулся неопределенными, массив или какой-либо другой неверный объект.»
Я использую react-native 0.18.1
и reagent 0.5.1
с re-frame 0.6.0
. Я проверил это с reagent 0.6.0-alpha
и re-frame 0.7.0-alpha
и получил те же ошибки.
Я копал это в течение нескольких часов, и я думаю, мне нужна помощь. Любые подсказки/идеи, чтобы попытаться исправить это, любые ссылки в коде, на который нужно смотреть? Спасибо за тонну заранее.