l使用带角度的传单,我想在打开模式组件的标记上单击addEventEvent。但是问题是当我在下面运行我的代码时,addEventListener是打开模式组件,而无需单击标记。
let m = new L.Marker([33, 44], {
icon: new L.DivIcon({
className: 'my-div-icon',
html: `
<div>
<img src="${f[1].weather_status_icon_ar}"/style="width: 30px;height:
30px;">
</div>`
})
}).addEventListener('click',this.navigate(this.LocationID)).addTo(this.weather)
模态组件
async navigate(LocationID) {
const modal = await this.modalController.create({
component: WeatherDetailsPage,
});
await modal.present();
}
我想通过标记单击手动而不是自动打开模式组件
这是预期的,因为您调用this.navigate(this.LocationID)
,这会打开一个模态,并通过此函数调用将值returned传递给addEventListener
。
即您的代码等效于:
const result = this.navigate(this.LocationID);
....addEventListener('click', result)
您不应该调用此函数。您应该改为将调用此函数的函数传递给addEventListener()
:
addEventListener('click', () => this.navigate(this.LocationID))