Zajmuję się tworzeniem aplikacji z Flask Backend z frontem ReactJS. Aplikacja ReactJS została opracowana i dołączona do pakietu internetowego.Zarządzanie obiektem "okno" w aplikacji izomorficznej za pomocą ReactJS i Flask Python
Wszystko działa poprawnie z renderowaniem po stronie klienta, dołączonym do webpack
.
Próbuję teraz dodać renderowanie po stronie serwera z python-react.
Ale problemem jest to, muszę podzielić się kilka zmiennych do mojego ReactJS aplikacji poprzez Jinja2 template
w szablonie bazowym index.html
który ma składnik główny węzeł reactjs
<div id='react-node'></div>
.
miałem wysłać moje routes
i config
do mojej aplikacji poprzez jinja2
szablon jak poniżej,
//index.html
<!doctype html>
<html>
...
...
<script type='text/javascript'>
var STATIC_IMAGE_ROOT = "{{ url_for('static', filename='img/') }}";
var ROUTES = { ... };
...
</script>
</html>
Wszystkie powyższe js zmienne są ustawione na globalnym window
obiektu.
Ale gdy próbuję wyrenderować komponent w python, rzuca wyjątek dla window
obiektu ReactRenderingError: react: ReferenceError: window is not defined
.
Jaki jest najlepszy sposób rozwiązania tego problemu?
Hi! Używasz strony 'React.renderToString' (lub' React.renderToStaticMarkup')? – Jean