gribnoysup / react-yandex-maps

Yandex Maps API bindings for React
MIT License
329 stars 116 forks source link

instanceRef в TypeScript #293

Closed nurbolatk closed 3 years ago

nurbolatk commented 3 years ago

Здравствуйте, люди добрые!

Я использую код из этого issue https://github.com/gribnoysup/react-yandex-maps/issues/255#issuecomment-670649163 И у меня выдается такая ошибка:

Type 'MutableRefObject' is not assignable to type '(instance: Ref) => void'.

const mapRef = React.useRef(null); ... <Map instanceRef={mapRef} ... />

Подскажите, пожалуйста, как нужно инициализировать instanceRef для Map в TypeScript-е, чтобы всё заработало? Предыдущие два я инициализировал так:

const ymaps = React.useRef<any>(null); const placemarkRef = React.useRef<any>(null);

Прошу не бить! Я учу TypeScript с проектом, где использую эту библиотеку 😅

nurbolatk commented 3 years ago

Решил, использовав функцию и передав его в instanceRef

const mapRef = React.useRef<any>(null);
const setMapRef = useCallback((instance: Ref<any>) => {
  mapRef.current = instance;
}, []);

<Map instanceRef={setMapRef } ... />