我正在尝试使用sencha touch编写可编辑列表,
我看到很多例子,但没有任何东西不正常,所以我决定从头开始构建,
我有一个包含项目的列表,在项目上点击我的控制器运行下一个代码
showDetail: function (list, record) {
this.getMain().push({
xtype: 'vedit',
title: record.fullDetails(),
data: record.getData()
});
我的“vEdit”屏幕是一个应该显示当前点击的项目数据的表单
这是编辑表格的代码:
var form = Ext.define('TM.view.vEdit', {
extend: 'Ext.form.Panel',
xtype: 'vedit',
config: {
title: 'Edit task',
styleHtmlContent: true,
scrollable: 'vertical',
items: [
{
xtype: 'textfield',
name: 'title',
label: ''
},
{
xtype: 'textfield',
name: 'desc',
label: ''
}
]
}
});
我尝试使用下一个代码加载数据:
var ed = Ext.create('TM.model.mTasks', {
title: 'Ed',
desc: 'ed@sencha.com'
});
form.setRecord(ED);
并收到下一个错误:
Uncaught TypeError: Object function () {
return this.constructor.apply(this, arguments);
} has no method 'setRecord'
需要你的帮助,
谢谢!
答案 0 :(得分:0)
由于你没有在form的配置中定义一个名为record的字段,所以你不会得到setRecord()方法。
要传递数据,您可以尝试这样做:
form.config.record = ed;
并且在初始化视图功能中你可以得到它:
var taskData = this.config.record;
答案 1 :(得分:0)
var form = Ext.define('TM.view.vEdit', {
伙计,你需要创建一个新的表单(),因为它只是一个类型定义。