Поддержка Meteor 1.3 React SSR

Я использую Meteor 1.3 с React и FlowRouter (версия SSR). Я хочу добиться SSR, но когда я импортирую файл маршрутов в main.js моего сервера, я получаю сообщение об ошибке, в основном говорящее, что один из моих пакетов npm вызывает window, а window не существует на сервере.

Есть ли способ обойти эту проблему, продолжая использовать пакет? Речь идет о пакете Wallop.


person nupac    schedule 13.06.2016    source источник
comment
Я не думаю, что вы могли бы сделать window доступным, так как на сервере нет DOM. Также сомнительно, что это будет работать, даже если вы исправите библиотеку, поскольку она сильно зависит от функций DOM. Я считаю, что реализация той же функциональности в React должна быть простой и понятной.   -  person aedm    schedule 13.06.2016


Ответы (1)


window никогда не будет существовать на сервере. на узле глобальным является окно, подобное контейнеру.

Я думаю, что в любом случае ссылаться непосредственно на объект окна не очень хорошая идея.

Я могу связать вас со своим профилем на github, где я сделал демонстрационное приложение с метеором, реакцией и SSR: https://github.com/LucaMele/meteor-react-ssr-app-demo

person Luca Mele    schedule 27.09.2016
comment
В данном случае это был один из импортированных мной пакетов, который ссылался на window. Поскольку это был не мой код, а форк для добавления поддержки SSR был невозможен, я пошел дальше и создал свой собственный пакет. - person nupac; 27.09.2016