【问题标题】:Sencha-touch 1.1: Getting Cannot read property 'length' of undefinedSencha-touch 1.1:获取无法读取未定义的属性“长度”
【发布时间】:2012-06-08 18:09:08
【问题描述】:

您好,我正在尝试读取我的 json 数据,但它一直显示加载屏幕。我正在尝试将我的数据加载到包含图片和一些信息的列表中。它适用于内联数据。但是当我尝试使用 JSON 时它不起作用。

谁能指出我做错了什么或忘记了什么?我以前从未使用过 JSON。

我的 .json 文件:

    {
        "data": [
            {
                "name": "Shirt",
                "sizes": "S/M/L",
                "price": "19,95",
                "thumb": "shirt.jpeg"
            },
            {
                "name": "Vest",
                "sizes": "S/M/L",
                "price": "24,95",
                "thumb": "vest.jpeg"
            },
            {
                "name": "Knitted vest",
                "sizes": "S/M/L",
                "price": "29,95",
                "thumb": "knittedvest.jpeg"
            },
            {
                "name": "T-Shirt",
                "sizes": "S/M/L",
                "price": "9,95",
                "thumb": "tshirt.jpeg"
            },
            {
                "name": "Jacket",
                "sizes": "S/M/L",
                "price": "69,95",
                "thumb": "jacket.jpeg"
            },
            {
                "name": "Trui",
                "sizes": "S/M/L",
                "price": "29,95",
                "thumb": "trui.jpeg"
            },
            {
                "name": "Overhemd",
                "sizes": "S/M/L",
                "price": "29,95",
                "thumb": "overhemd.jpeg"
            },
            {
                "name": "Grandad",
                "sizes": "S/M/L",
                "price": "19,95",
                "thumb": "grandad.jpeg"
            }
        ]
    }

我的model.js:

    Ext.regModel('Tops', {                          
        fields: [
            {name: 'name', type: 'string'},
            {name: 'sizes', type: 'string'},
            {name: 'price', type: 'string'},
            {name: 'thumb', type: 'string'},
            ]
    });

我的 store.js:

    App.views.topwearstores = new Ext.data.Store({              
        model: 'Tops',
        autoLoad: true,
        proxy: {
            type: 'ajax',
            url: '/data/topwear_data.json',
            reader: {
                type: 'json',
                root: 'data'
            },  
        },
    });

我的 view.js:

    App.views.WishlistIndex = Ext.extend(Ext.Panel, {

            layout: 'fit',   
            items: {
                xtype: 'list',
                itemTpl:
                    '<tpl for".">'+
                    '<div id="Catalog_Itemimage"><img class="Catalog_Image" src="res/images/kleding/dude/{thumb}" height="75px" width="75px"/></div>'+ 
                    '<div id="Catalog_info">'+
                    '<div id="Catalog_name">{name}</div>'+
                    '<div id="Catalog_price">&#8364;{price}</div>'+
                    '<div id="Catalog_sizes">Sizes: {sizes}</div>'+
                    '</div>'+
                    '</tpl>',               
                store: App.views.topwearstores,

                singleSelect: true,
                itemSelector: 'div.Catalog_Info',
            },

    });
    Ext.reg('WishlistIndex', App.views.WishlistIndex);

【问题讨论】:

    标签: database json sencha-touch undefined


    【解决方案1】:

    我也是这方面的新手,我遇到过几次未定义错误的长度。

    您的代码对我来说似乎很好,但在我的项目中造成这种情况的一件事是对各种文件的引用在 index.html 中的错误顺序

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-10
      • 2021-11-29
      • 1970-01-01
      相关资源
      最近更新 更多