Суть такова. Имеется канвас - сфера, который можно крутить по осям мышкой. Но, чтобы создать контекст <canvas> элемента, необходимо использовать лайфциклы. В моём случае использую useEffect. Проблема в следующем:
Пример: https://pastebin.com/H7PC2NfK
Проблема в чем. Контекст канваса генерится в эффекте, то есть функции-обработчики событий с мыши не могут забрать переменную ctx. В стейт хуков контекст не положить. Как сделать так, чтобы канвас генерился и потом с ним можно было спокойно работать в функциях вне useEffect'a?
P.S. Вызывать внутри юзэффекта с передачей внутрь переменной? Но тогда не получится использовать события с элемента.
e.target.getContext('2d')
Class component использовать
https://github.com/AveDemid/snake я тут с канвасом работал, посмотир, думаю найдешь ответ на свой вопрос
Обсуждают сегодня