2015-01-02 2 views
9

Я только начинаю изучать ReactJS и определяю, стоит ли его переходить из AngularJS для использования с Flask. Я знаю, что одним из преимуществ ReactJS является способ renderToString для рендеринга и HTML-строки для более быстрого времени загрузки и улучшения SEO. Из того, что я прочитал, SEO намного лучше, чем может сделать AngularJS, хотя Google работает над улучшением обхода JavaScript.Реагирование на стороне сервера ReactJS в Flask

Мой вопрос о том, как преимущества SEO будут работать с Framework как Flask. Скажем, у меня есть компонент, подобный приведенному ниже, и просто отнес его к моему div. Если я хочу отобразить эту сторону сервера, мне нужно будет использовать что-то вроде nodejs или некоторой библиотеки Python, которая может выполнять Javascript? Если я попытаюсь сделать React.renderToString (.....), он ничего не сделает. Если это так, рекламируемые преимущества SEO для ReactJS на самом деле не делают его лучше, чем AngularJS? Пожалуйста, помогите мне разобраться в этом, и если это возможно, чтобы показать серверную сторону Javascript с флягой о том, как я могу это сделать?

var Foo = React.createClass({ 
    render: function() { 
     return (
      <div>Foo</div> 
     ); 
    } 
}); 

React.render(<Foo />, document.getElementById('foo')); 
+1

Есть несколько вопросов, которые задают вопрос о реакции + php; ответы одинаковы для python (например, заменяя PHPv8 на Pyv8, например) и эквивалентный код python, например. [этот] (http://stackoverflow.com/a/26049289/1074592). – FakeRainBrigand

ответ

2

Это для Django, а не термос, но должно быть легко адаптировать базовую технику: https://github.com/markfinger/django-react

+0

Знаете ли вы, есть ли хороший способ сделать это без использования встроенного скрипта? В их примере они просто помещают контекст в встроенный тег сценария. Ища альтернативу, чтобы мой CSP был счастлив. –

+0

есть! https://github.com/keredson/bottle-react (работает с колбой и бутылкой) – keredson

0

Там есть вилка Джанго-среагировать, которая теперь превратилась в более общий пакет: https://github.com/mic159/react-render. Вам также понадобится установить службу узла. Он может использоваться с любой инфраструктурой python. Это, безусловно, самый простой способ иметь изоморфные шаблоны.

Смежные вопросы