Реактивный шлем с рендерингом на стороне сервера

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

// 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)

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

0 ответов

Другие вопросы по тегам