1
マーカーで問題を解決した後、別の問題が発生しました。今回は、は、マップを使用してパネルを作成した後に、リスナー(on
またはaddListener
のメソッドを使用)を追加できません。Sencha Touch:Mapにリスナーを追加できません。助けてください?
ご協力いただければ幸いです。ここでは、コードです:
Ext.setup({
...
onReady: function() {
var TopBar, Tabs, MapHome, Viewport, Homecard, Nearbycard, updateNearby;
/*
* HOME
*/
var markersHome = [];
MapHome = new Ext.Map({
id: "maphome",
title: 'Map',
useCurrentLocation: true,
listeners: {
centerchange: function(comp, map){
deleteOverlays(markersHome); //defined on another file
addMarker(markersHome,map.center); //defined on another file
showOverlays(markersHome,map); //defined on another file
}
},
mapOptions : {
mapTypeControl : false,
navigationControl : false,
streetViewControl : false,
backgroundColor: 'transparent',
disableDoubleClickZoom: true,
zoom: 17,
draggable: false,
keyboardShortcuts: false,
scrollwheel: false,
mapTypeId: google.maps.MapTypeId.HYBRID
}
});
Homecard = new Ext.Panel({
title: "home",
id: "homecard",
iconCls: "home",
items: [MapHome]
});
/*
* NEARBY
*/
Nearby = new Ext.List({
scroll: 'vertical',
height: '100%',
styleHtml: true,
store: new Ext.data.Store({
model: 'Places', //defined on another file
sorters: 'title',
data: []
}),
itemTpl:['<div class="nearby-item" id="{id}">',
'<img alt="{title}" src="{imageUrl}" />',
'<h2>{title}</h2>',
'<p>{excerpt}</p>',
'</div>']
});
Nearbycard = new Ext.Panel({
fullscreen: true,
iconCls: "list",
title: "nearby",
id: "nearbycard",
items: [Nearby]
});
updateNearby = function() {
console.log('updating!'); //debug purposes
}
MapHome.on('locationupdate',updateNearby); // <-- Here is the problem
/*
* MAIN
*/
TopBar = new Ext.Toolbar({
dock: 'top',
xtype: "toolbar",
title: "<img class='titleLogo' src='css/images/logo.png' />",
items: [
{ xtype: 'spacer' },
{
iconCls: 'settings9',
iconMask: true,
text: 'options'
}
]
});
Tabs = new Ext.TabPanel({
id: 'tabs',
//fullscreen:true,
dock: 'bottom',
flex: 1,
tabBar: {
dock: 'bottom',
layout: {
pack: 'center'
}
},
items: [ Homecard, Nearbycard ]
});
Viewport = new Ext.Panel({
fullscreen:true,
layout:{type:'vbox',align: 'stretch'},
ui:'dark',
items: [TopBar,Tabs],
});
}
});
私はMapHome.on
コードでの行に、このエラーを取得しておいてください。
Uncaught TypeError: Cannot read property 'element' of undefined
を修正しました。変数を定義する際にエラーが発生しました。上記のコードが正しいようになりました。 – vascomotaborges