ここにあなたのコードへのいくつかの提案があります:
1.Sencha Touch 内でのアンダーバー ('_') の使用は、get/set/apply/update を持つ変数用です。ローカル変数を使用していますが、これがベスト プラクティスです。
2. '_record' という単語がレコードであることを願っています。その場合は、次を使用する必要があります。
name = _record.get('name');
data = _record.getData();
フォームに入力する最良の方法は、フォームパネルを使用してフォームパネルに値を追加することです。すべてのフィールドにはポッパー名が割り当てられています。
データが次の場合:
data = {name: 'Kurt001', password: '12er51wfA!'}
これを使用できます:
Ext.define('App.view.ProductDetails', {
extend: 'Ext.form.Panel',
xtype: 'productdetails',
config: {
cls: 'product-details',
scrollable: null,
layout: 'vbox',
defaults: {
labelAlign: 'top',
clearIcon: false
},
items: [{
xtype: 'textfield',
name: 'name'
}, {
xtype: 'passwordfield',
name: 'password'
}, {
xtype: 'button',
itemId: 'btnLogin'
}]
}
});
データを追加するには、次を使用します。
Ext.Viewport.down('.productdetails').setValues(data);
別:
var view = Ext.Viewport.down('.productdetails')
view.down('.textfield').setValue(data.name);
view.down('.passwordfield').setValue(data.password);
別
view.down('.field[name=name]').setValue(data.name);
view.down('.field[name=password]').setValue(data.password);
あるビューから次のビューにデータを取得するには、さまざまなオプションに従うことができます。
1.データを現在のビューに設定し、そのビューからデータを取得します。リストを持っているようです。したがって、データをリストに適用できます。
view.down('.list').myData = data;
拡張バージョンは、構成内に myData を使用してカスタム リストを作成することです。そうすれば、次を使用できます。
view.down('.list').setMyData(data);
またはあなたの場合
_dataview.setMyData(data);
2.店舗を利用する すでにレコードを渡しているので、選択したフィールドを店舗モデルに追加して、単純にフラグを設定することができます。