реактивный шлем с рендерингом на стороне сервера - PullRequest
0 голосов
/ 09 октября 2018

Я пытаюсь использовать реактивный шлем с реактивными рельсами и веб-упаковщик с серверным рендерингом, который позволяет обрабатывать генерацию мета-тега, когда пользователь перемещается по разным маршрутам.Я могу сгенерировать страницу на сервере и получить ее содержимое, но мета-теги реагирует - шлем отвечает за их создание.Хотя на стороне клиента ответный шлем работает отлично, на стороне сервера метатеги не доставляются.Есть ли какая-то причина, почему ответный шлем не выполняется на стороне сервера, в то время как все остальные части приложения выполняются?

// App.js
// if window defined else ...

<StaticRouter location={this.props.path} context={context}>
  <Route path='/' render=>{ routerProps => <Landing {...routerProps}/>}/>
</StaticRouter>

// Landing
// render ...

<section>
  <Helmet
    title={'Title'}
      meta={[
        {"name": "robots", "content": "index, follow"},
        {"property": "og:site_name", "content": ""},
        {"property": "og:title", "content": ''},
        {"property": "og:type", "content": "website"},
        {"property": "og:url", "content": this.props.path },
        {"property": "og:description", "content": '...'},
      ]}
  />
  ...
</section>

// views/main.slim

= react_component "App", {} , { prerender: true }

// app/javascript/packs/application.js

var componentRequireContext = require.context("my_app", true)
var ReactRailsUJS = require("react_ujs")
ReactRailsUJS.useContext(componentRequireContext)

Любая помощь будет принята с благодарностью.Спасибо.

...