هر نقشه دارای یکسری متدهایی است که با آن تعامل داشته و عملی خاص را
انجام میدهند. برای استفاده از
متدها
و دیگر اجزا نقشه باید به شیء نقشه که توسط کامپوننت
<Parsimap />
ایجاد شده، دسترسی داشت. به طور کلی میتوان با دو روش به
Instance نقشه دسترسی داشت.
ready نقشه
از طریق رخداد
ready
نقشه میتوان به Instance دسترسی داشت، برای انجام
اینکار لازم است که هنگام ایجاد نقشه توسط کامپوننت
<Parsimap />
گزینه ready مربوط به
رخدادهای نقشه
دارای متدی به صورت callback باشد تا بتوان از آرگومان
این رخداد که همان Instance نقشه است، استفاده نمود.
باید توجه داشت متد موجود در این رخداد بلافاصله پس از بارگزاری کامل
نقشه صدازده خواهد شد.
import React, { Component } from 'react';
import { Parsimap } from 'react-parsimap';
// Set API Key via static `setKey` method of imported `Parsimap` class.
Parsimap.setKey('API_KEY');
export default class App extends Component {
// Access to map instance and using `setView` method, through assign a
// `callback` into `ready` event and after map fully loaded this callback
// called and map instance argument at it can be used.
render() {
return (
<Parsimap
id="map"
center={{ lat: 35.7575, lng: 51.41 }}
events={{
ready: map => map.setView({ lat: 35.75, lng: 51.42 }),
}}
/>
);
}
}
تغییر مختصات مرکز نقشه بلافاصله پس از بارگزاری نقشه.
maps
maps ارائه دهنده Instanceهای مربوط به
نقشههای ایجاد شده است. این نوع دسترسی زمانی قابل استفاده است که
نقشه بارگزاری شده و یا درون متدهایی که اجرای آن همزمان با بارگزاری
نقشه نباشد، قابل بکارگیری است. به عنوان نمونه میتوان در اجزائی
مانند
<button /> به
محتوای داخل maps دسترسی داشت. برای دسترسی به
Instance یک نقشه ایجاد شده لازم است با توجه به شناسه
یا id مربوط به آن که هنگام ایجاد نقشه توسط کامپوننت
<Parsimap />
تعیین شده است، از طریق id مربوطه
propery را از آبجکت maps خواند.
import React, { Component } from 'react';
import { Parsimap, maps } from 'react-parsimap';
// Set API Key via static `setKey` method of imported `Parsimap` class.
Parsimap.setKey('API_KEY');
export default class App extends Component {
constructor() {
super();
// Access to map instance and using `setView` method of map.
// The `mymap` is created by `Parsimap` component.
setTimeout(() => {
maps.mymap.setView({ lat: 35.75, lng: 51.42 });
}, 2000);
}
render() {
return <Parsimap id="mymap" center={{ lat: 35.7575, lng: 51.41 }} />;
}
}
تغییر مختصات مرکز نقشه
2ثانیه پس از بارگزاری نقشه.