Сенча сенсорный передать переменные от компонента к компоненту - PullRequest
2 голосов
/ 21 ноября 2011

Я понял, что, вызывая MyDetailView.Update (record.data), я отправляю record.data в MyDetailView и могу получить к ним доступ в xtemplate:

tpl:'<h1>{title}></h1>'

Дополнительно я хочу использовать record.data в элементе xtype 'map':

items: [
  {
    xtype: 'map',
    getLocation: true,
    padding: '20 0 0 0',
    mapOptions: {
      center : new google.maps.LatLng(lng, lat), // <-- here record.data.lat
      zoom : 15,
      mapTypeId : google.maps.MapTypeId.ROADMAP,
      navigationControl: true,
      navigationControlOptions: {
        style: google.maps.NavigationControlStyle.DEFAULT
      }
    }
  }
]

Как я могу получить доступ к данным в MyDetailView?

Спасибо

---------------- РЕДАКТИРОВАТЬ ------------------

Я добавляю свой полный код. В представлении списка я вызываю AppDetailcard.update (record.data).

var AppDetailcard = new Ext.Panel ({
    id: 'detailcard',
    styleHtmlContent: false,
    tpl: 'my {lat}', //<-- here it works
    fullscreen: true,
    dockedItems: [AppDetailcardToolbar],
    items     : [
        {
            xtype: 'map',
            getLocation: true,
            mapOptions: {
                center : new google.maps.LatLng(data.lat, data.lng), //<-- here it does not
                zoom : 15,
                mapTypeId : google.maps.MapTypeId.ROADMAP,
                navigationControl: true,
                navigationControlOptions: {
                style: google.maps.NavigationControlStyle.DEFAULT
                            }

            }
        }
    ]

1 Ответ

0 голосов
/ 27 июня 2012

Вы также должны вставить новую запись в массив элементов.

this.down('map').setMapCenter({
    latitude: newRecord.data.latitude,
    longitude: newRecord.data.longitude
});

Я обычно помещаю записи , а не данные, в представление, а затемиспользуйте событие updateRecord, чтобы принять эту запись и протолкнуть ее дальше вниз по массиву элементов.

Посмотрите на пример навигационного обзора на сайте Sencha в файле представления Show.js, где они делают именно это.

...