Apache Royale: проблема с DataGrid Jewel в SDK 0.9.7 - PullRequest
0 голосов
/ 29 января 2020

Поскольку я хочу использовать новые функции Apache Royale, я переключаюсь с SDK 0.9.6 на 0.9.7 # 716 (JSOnly Nightly Build), загруженного сегодня.

Но при попытке использовать Jewel DataGrid , У меня ошибка js:

DataGridView.js:171 Uncaught TypeError: Cannot read property 'length' of undefined
    at org.apache.royale.jewel.beads.views.DataGridView.handleDataProviderChanged (DataGridView.js:171)
    at org.apache.royale.jewel.beads.views.DataGridView.org_apache_royale_jewel_beads_views_DataGridView_createChildren (DataGridView.js:140)
    at org.apache.royale.jewel.beads.views.DataGridView.set__strand (DataGridView.js:308)
    at org.apache.royale.jewel.DataGrid.org.apache.royale.core.ElementWrapper.addBead (ElementWrapper.js:117)
    at org.apache.royale.jewel.DataGrid.org.apache.royale.core.HTMLElementWrapper.addBead (HTMLElementWrapper.js:50)
    at org.apache.royale.jewel.DataGrid.org.apache.royale.core.UIBase.addBead (UIBase.js:375)
    at Object.org.apache.royale.utils.loadBeadFromValuesManager (loadBeadFromValuesManager.js:41)
    at org.apache.royale.jewel.DataGrid.org.apache.royale.core.UIBase.addedToParent (UIBase.js:563)
    at org.apache.royale.jewel.DataGrid.org.apache.royale.jewel.supportClasses.group.GroupBase.addedToParent (GroupBase.js:64)
    at org.apache.royale.jewel.DataGrid.org.apache.royale.jewel.Group.addedToParent (Group.js:74)

Вот тестовый пример:

<j:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                xmlns:js="library://ns.apache.org/royale/basic" 
                xmlns:j="library://ns.apache.org/royale/jewel" 
                applicationComplete="ev_complete()">

    <j:initialView>
        <j:View >
            <j:Label text="Hello"/>
            <j:DataGrid localId="dg" width="800" height="500">
               <j:beads>
                    <j:AddDataGridItemRendererForArrayListData/>
                    <j:RemoveDataGridItemRendererForArrayListData/>
                    <j:UpdateDataGridItemRendererForArrayListData/>
                    <j:RemoveAllDataGridItemRendererForArrayListData/>
                </j:beads>
                <j:DataGridColumn label="Label" dataField="label"/>
                <j:DataGridColumn label="D1" dataField="d1" />
            </j:DataGrid>
        </j:View>        
    </j:initialView>    

    <fx:Script>
        <![CDATA[   
            import org.apache.royale.collections.ArrayList;
            private function ev_complete():void{
                dg.dataProvider = new ArrayList([
                    {label:'label1', d1:'data1'},
                    {label:'label2', d1:'data2'},
                    {label:'label3', d1:'data3'}
                ])
            }
        ]]>
    </fx:Script>
</j:Application>

Я верю, я должен добавить шарик или что-то вроде этого?

Может ли кто-нибудь мне помочь?

1 Ответ

1 голос
/ 30 января 2020

Добавить отсутствующий <j:columns> тег вокруг DataGridColumn

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...