Sencha Touch 读取远程 XML 数据

Posted

技术标签:

【中文标题】Sencha Touch 读取远程 XML 数据【英文标题】:Sencha Touch Reading remote XML data 【发布时间】:2013-04-21 10:36:27 【问题描述】:

我最近才开始使用 Sencha Touch 2.1。我在读取 XML 数据时遇到问题。读取本地 xml 文件时,它在 PC、手机和平板电脑上运行良好;当读取远程 xml 时,它在 PC 上运行良好,但我在手机和平​​板电脑上有一个空白列表。我是什么不见了?

型号

    Ext.define('Cus.model.Biz', 
extend: 'Ext.data.Model',
config: 
    fields: [
        name: 'name', type: 'auto',
        name: 'tel', type: 'auto',
        name: 'address', type: 'auto'
    ]

);

商店

Ext.define("Cus.store.BizList", 
extend: 'Ext.data.Store',
requires: ['Cus.model.Biz', 'Ext.data.reader.Xml'],
config: 
    model: 'Cus.model.Biz',
    autoLoad: true,
    proxy: 
        type: 'ajax',
        url:'http://ip:port/XXX/list.xml',
        reader: 
            type: 'xml',
            root: 'Result',
            record: 'Biz'
        
    

);

查看

Ext.define('Cus.view.phone.Main', 
extend: 'Ext.Container',
requires:[
    'Ext.dataview.List',
    'Ext.data.Store',
    'Cus.store.BizList'
],

config: 
    layout: 'vbox',
    items: [
        
            xtype: 'toolbar',
            docked: 'top',
            title: 'My List',
        ,
        
            xtype: 'list',
            store: 'BizList',
            loadingText: 'loading',
            itemTpl: 'name tel address',
            flex: 1
        
    ]

);

远程xml文件是

<Result>
<Bizs>
    <Biz>
        <name>name1</name>
        <tel>tel1</tel>
        <address>add1</address>
    </Biz>
    <Biz>
        <name>name2</name>
        <tel>tel2</tel>
        <address>add2</address>
    </Biz>
    <Biz>
        <name>name3</name>
        <tel>tel3</tel>
        <address>add3</address>
    </Biz>
</Bizs>

【问题讨论】:

只需将负载侦听器添加到您的商店并检查您的控制台日志以查看数据是否已加载。listeners: load: function( me, records, successful, operation, eOpts ) console.log(records); 也让我们知道您遇到了什么错误? 【参考方案1】:

我遇到了类似的问题。

有必要定义请求的权限。在 xcode 设置或 manifest.xml(适用于 android)中

【讨论】:

以上是关于Sencha Touch 读取远程 XML 数据的主要内容,如果未能解决你的问题,请参考以下文章

Sencha Touch 不显示 XML 数据

Sencha-Touch:未捕获的类型错误:无法读取未定义的属性“代理”

如何使用 Sencha Touch 数据模型读取嵌套的 JSON 结构?

Sencha Touch 存储同步

Sencha touch XML 对 JSON 的响应

Sencha Touch 和远程服务器上的身份验证