为嵌套列表设置 LocalStorage 存储
Setting LocalStorage store for nested list
我创建了一个本地存储存储,并按照本教程在其中存储了演示值:
http://sureshdotariya.blogspot.com/2013/03/understanding-local-storage-proxy-in.html
一切正常,我查看了 chrome 中资源中的商店数据,它就在那里,当我加载页面时它加载正常,没有错误,但没有显示任何数据,这是我的查看代码:
Ext.define('MyTest.view.SearchPanel', {
extend: 'Ext.Panel',
xtype: 'searchpanel',
config: {
layout: 'fit',
items: [
{
xtype: 'nestedlist',
title: 'Search Results',
displayField: 'Name',
store: {
storeId: 'UserStore',
fields: ['Name']
},
}]
}
});
我在这里错过了什么?我可以使用本地存储存储作为嵌套列表的存储吗?如果是,那么为什么它显示 "No items found",我已经在 app.js 中添加了商店,我尝试在此视图中要求它,但那没有用。
感谢您的帮助,谢谢。
Ext.dataview.NestedList requires Ext.data.TreeStore instead of Ext.data.Store(在您提供的示例 URL 中)。
在Ext.data.TreeStore中需要root
、defaultRootProperty
配置,在项目中leaf
属性。
当然你可以在Ext.data.TreeStore中设置Ext.data.proxy.LocalStorage作为代理,试试这些代码:
Ext.define('ListApp.model.User', {
extend: 'Ext.data.Model',
config: {
fields: [{
name: 'text',
type: 'string'
}]
}
});
Ext.define('App.store.User', {
config: {
model: 'ListApp.model.User',
defaultRootProperty: 'items',
root: data
proxy: {
type: 'localstorage',
id: 'UserInfo'
}
}
});
我创建了一个本地存储存储,并按照本教程在其中存储了演示值:
http://sureshdotariya.blogspot.com/2013/03/understanding-local-storage-proxy-in.html
一切正常,我查看了 chrome 中资源中的商店数据,它就在那里,当我加载页面时它加载正常,没有错误,但没有显示任何数据,这是我的查看代码:
Ext.define('MyTest.view.SearchPanel', {
extend: 'Ext.Panel',
xtype: 'searchpanel',
config: {
layout: 'fit',
items: [
{
xtype: 'nestedlist',
title: 'Search Results',
displayField: 'Name',
store: {
storeId: 'UserStore',
fields: ['Name']
},
}]
}
});
我在这里错过了什么?我可以使用本地存储存储作为嵌套列表的存储吗?如果是,那么为什么它显示 "No items found",我已经在 app.js 中添加了商店,我尝试在此视图中要求它,但那没有用。
感谢您的帮助,谢谢。
Ext.dataview.NestedList requires Ext.data.TreeStore instead of Ext.data.Store(在您提供的示例 URL 中)。
在Ext.data.TreeStore中需要root
、defaultRootProperty
配置,在项目中leaf
属性。
当然你可以在Ext.data.TreeStore中设置Ext.data.proxy.LocalStorage作为代理,试试这些代码:
Ext.define('ListApp.model.User', {
extend: 'Ext.data.Model',
config: {
fields: [{
name: 'text',
type: 'string'
}]
}
});
Ext.define('App.store.User', {
config: {
model: 'ListApp.model.User',
defaultRootProperty: 'items',
root: data
proxy: {
type: 'localstorage',
id: 'UserInfo'
}
}
});