繁体   English   中英

在列表中加载 XML 数据的 Sencha Touch 给出一个 Javascript TypeError

[英]Sencha Touch loading XML data in List give a Javascript TypeError

我是 Sencha Touch 框架的新手。 我需要将一些数据从 XML 文件加载到List 现在我只是想让文档中给出的XMLReader 示例工作。

当我尝试运行下面提到的代码时,我收到一条错误消息:

Javascript error on Line 7212 
sencha-touch-debug.js
TypeError: Result of expression 'records' [undefined] is not an object.

代码 - index.js:

Ext.setup({
    onReady: function(){
        
        Ext.regModel('User1', {
            fields: ['id', 'name','email']
        });
        
        var temp = new Ext.data.Store({
            model: 'User',
            autoLoad:true,
            proxy: {
                type: 'ajax',
                url : 'users.xml',
                reader: {
                    type: 'xml',
                    record: 'user'
                }
            }
        });
        
        var list = new Ext.List({
            fullscreen: true,
            itemTpl : '{id} {name}',
            store: temp
        });
        list.show();
    }
});

用户文件

<?xml version="1.0" encoding="UTF-8"?>
<users>
  <user>
    <id>1</id>
    <name>Ed Spencer</name>
    <email>ed@sencha.com</email>
  </user>
  <user>
      <id>2</id>
      <name>Abe Elias</name>
      <email>abe@sencha.com</email>
  </user>
</users>

我知道这是我遗漏的一件很小的事情,但我不确定它是什么。 我尝试了这篇文章中提到解决方案,但对我不起作用。

我没有注意到您没有定义 xml 文件的根节点。

var temp = new Ext.data.Store({
    model: 'User',
    autoLoad:true,
    proxy: {
        type: 'ajax',
        url : 'users.xml',
        reader: {
            type: 'xml',
            record: 'user',
            root: 'users'
        }
    }
});

不确定这是否是唯一的事情,请尝试并告诉我!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM