Александр Марченко: вы вообще читали вопрос? В вопросе я сказал что глобальных объектов браузера на сервере нету и что редеринг осуществляется в строку. Зачем вы повторяете мне сказанные мною вещи?)
Суть моего вопроса в том как модуль react-dom/server в логике компонентов обрабатывает появление сугубо браузерных объектов. Если у меня в хуке(lifecycle-методе) используется что-то такое, что удовлетворяет двум условиям: 1) существует лишь в браузерном окружении, 2) гарантированно влияет на отрисовку этого компонента, то как обрабатываются такие ситуации? Т.е. если отрисовка компонента зависит от того объекта, что есть только в браузере, то как оно может отрисоваться на сервере. Доходчиво спросил?)
Вот мне тоже кажется что там что-то мокается хитрым образом, т.к. нам важнее не столько сама логика в компонентах и лишь их конечное отображение. Как я прокомментировал ниже, мне видится что там стоит внутри подобие PhantomJS.
Сам localStorage, ровно как и выбранный мною хук, лишь для примера. Мне не важен конкретно localStorage или DidMount, я в проекте не использую эти две вещи вместе. Это мог быть любой другой встроенный объект браузера и любая другая логика в абсолютно любом хуке.
Мне важна сама механика, как обрабатываются такие моменты. Мне просто кажется что там под капотом какой-то PhantomJS, которые решает подобные проблемы.
Да, именно от p1 до pn рандомно, только мне нужно отрисовывать в двух соседних регионах окружности разного цвета. Т.е есть фон и в нём фигура, к примеру, квадрат. Фон серыми а квадрат/круг/треугольник/цифру залить зелёными окружностями разных радиусов. Причём окружности в квадрате/whatever должны учитывать окружности фоновые, что они тоже существуют и плотно к ним прилегать, но не залезать. Т.е. прям таблица Рабкина получится.
copal: Спасибо огромное, очень помог. Алгоритм называется "Лучший кандидат Митчелла"(Mitchell’s Best-Candidate). На самом деле очень распространённый и эффективный алгоритм. Кому интересно, вот тут принцип работы: bl.ocks.org/mbostock/d7bf3bd67d00ed79695b
Ещё раз спасибо!
Спасибо огромное за ответ.
Что же тогда получается, что AJAX, как вы в начале написали, так назван ошибочно? Или тут речь про операции ввода-вывода сетевой карты/иной сетевой приблуды?
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.