Mar*_*nde 1 extjs sencha-touch
有人可以解释插件如何工作以在数据存储区中添加记录:"title","info"和"price"?因为我尝试了一些东西,但没有一个能奏效.并且sencha网站没有说清楚.
将新项目添加到现有商店实际上并不难.
首先,您需要配置模型和商店.在您的问题中,您可以将字段命名为"标题","信息"和"价格".
模型:
Ext.regModel('myModel', {
fields: [
{name: 'id', type: 'int' },
{name: 'title', type: 'string' },
{name: 'info', type: 'string' },
{name: 'price', type: 'int' }
]
});
Run Code Online (Sandbox Code Playgroud)
接下来,根据上述模型配置将保存数据的存储.我认为,在你的情况下,它应该是一个没有任何数据预加载的模型,例如,JSON?
所以让我们做一个localstorage(空店).商店由模型(myModel)组成,您为其提供storeID(以便稍后可以通过此ID引用商店).代理是localstorage,Store的唯一ID将是Model的ID字段.
商店:
var myStore = new Ext.data.Store({
model: "myModel",
storeId: "myStoreID",
proxy: {
type: "localstorage",
id: "id"
}
});
Run Code Online (Sandbox Code Playgroud)
现在,假设您有某种形式(用户可以在其中添加标题,信息和价格的输入,并且您希望在提交时将这些项目添加到现有商店.
在提交按钮的处理程序中,您现在必须"调用"商店,并在其上执行添加功能.在此添加功能中,您必须定义参数(模型参数)和要插入的数据.
下面我使用了固定数据和变量的混合来插入.
myStoreID.add({ title: "Mijn Titel", info: "Informatie, price: prijsvar });
Run Code Online (Sandbox Code Playgroud)
现在,商店将被填充,您将可以使用额外的数据记录.让我们说例如商店附加到数据视图,然后您可以执行:
dataView.update();
Run Code Online (Sandbox Code Playgroud)
以上不是完整的教程,但我认为这会对你有帮助吗?