3

假设我有一个“json”格式的用户字段:

{
    "users": [
       {
           "id": 1,
           "name": "Ed Spencer",
           "email": "ed@sencha.com"
       },
       {
           "id": 2,
           "name": "Abe Elias",
           "email": "abe@sencha.com"
       }
    ]
}

我假设这里的根是“用户”。我会将此文本保存为 users.json 文件吗?

从那里,我如何从这个文件中读取(在这种情况下,使用 ext.js)

Ext.define('AM.model.User', {
    extend: 'Ext.data.Model',
    fields: ['name', 'email']
});

var store = Ext.create('Ext.data.Store', {
    model: 'User',
    proxy: {
        type: 'ajax',
        url : 'users.json',
        reader: {
            type: 'json',
            root: 'users'
        }
    }
});

网址是什么?是绝对路径吗?这甚至会工作吗???帮助!

4

2 回答 2

3

在 HTML 页面中,JavaScript 文件是相对于 HTML 页面的 URL 或从绝对路径提供的。

我会将此文本保存为 users.json 文件吗?

你可以,当然。

网址是什么?

URLusers.json相对于运行应用程序的 HTML 页面的 URL,因此如果 HTML 页面位于http://localhost/myapp/index.html,则相对路径users.json将与绝对路径相同http://localhost/myapp/users.json

是绝对路径吗?

不,users.json是相对路径。如果您愿意,可以使用绝对路径。

我会data在您的文件夹中创建一个文件app夹并app/data/users.json用作 URL。

您还应该学习 Chrome 开发人员工具,以便查看网络请求。

于 2013-07-23T20:22:18.087 回答
1
{
    "users": [
       {
           "id": 1,
           "name": "Ed Spencer",
           "email": "ed@sencha.com"
       },
       {
           "id": 2,
           "name": "Abe Elias",
           "email": "abe@sencha.com"
       }
    ]
}

在您的模型字段中,没有来自 json 的 id,只有名称和电子邮件字段...

Ext.define('AM.model.User', {
    extend: 'Ext.data.Model',
    fields: ['name', 'email']
});

将 id 字段添加到模型中,像这样

Ext.define('AM.model.User', {
    extend: 'Ext.data.Model',
    fields: ['id', 'name', 'email']
});
于 2014-02-25T18:23:06.023 回答