Задать вопрос
@gsdev99

Как правильно сделать Responsive svg (D3.js)?

Все привет, подскажите, пожалуйста, как правильно сделать Responsive svg?
Ниже моя реализация, но я думаю, что есть подход более правильный.
https://codepen.io/gsdev99/pen/QWwmeKp
  • Вопрос задан
  • 66 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
profesor08
@profesor08 Куратор тега JavaScript
На ресайз тебе не нужен throttle, убери его и будет работать четче.

Вот с такой штукой плохо кончишь, если вдруг у тебя в компоненте появится какой-то стейт. А он у тебя есть. Потому что при каждом изменении стейта, ты будешь добавлять дополнительный обработчик resize к window. Либо как-то удаляй предыдущие обработчики, либо делай иначе, например добавив флаг, который будет сигнализировать, чтоб обработчик уже висит, и добавлять его еще раз не нужно.
useEffect(() => {
    window.addEventListener('resize', onResize)
  }, [])


Лично я бы вынес это дело в отдельный store на mobx, где будет обновляться ширина, а компонент будет обновляться когда надо.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 13:22
30000 руб./за проект
18 дек. 2024, в 12:37
10000 руб./за проект
18 дек. 2024, в 12:22
5000 руб./за проект