@ksntheia

Как добавить виджет vk для сайта на react?

Как подключить виджет vk на сайт на React?
Понятно, как добавить подключение openapi.js и код для его инициализации.
Но как поступать дальше, непонятно. Данный код, вставленный в react компонент, вызывает ошибку Cannot find name 'mode'
<div id="vk_groups"></div>
<script type="text/javascript">
    VK.Widgets.Group("vk_groups", {mode: 0, width: "220", height: "400"}, 1);
</script>
  • Вопрос задан
  • 184 просмотра
Решения вопроса 1
semyonfedoseev
@semyonfedoseev
Могу загуглить вместо тебя
Любой подобный скрипт следует инициализировать в хуке useEffect.
Для того, чтобы встроить полученный модуль в элемент div, необходимо воспользоваться хуком useRef.
Это будет выглядеть, примерно, следующим образом:

import {VK} from "vk"

const Component = () => {
const vkRef = useRef(null);

useEffect(() => {
  if (vkRef.current) {
    VK.Widgets.Group(vkRef.current, {mode: 0, width: "220", height: "400"}, 1);
  }
}, [vkRef])

return <div ref={vkRef}></div>
}

Доработайте код, по-необходимости.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы