Ошибки шлема с renderStatic - PullRequest
       23

Ошибки шлема с renderStatic

0 голосов
/ 10 октября 2018

Я пытаюсь настроить Helmet npm с помощью SSR в моем метеорном приложении, и я получаю ошибку, Error running template: TypeError: Cannot read property 'renderStatic' of undefined at sink.Я новичок в использовании SSR, поэтому я не понимаю, чего мне здесь не хватает.Очень нееееет вопрос.

Путь: server/main.js

import React from "react";
import PropTypes from 'prop-types';
import { onPageLoad } from "meteor/server-render";
import { renderToNodeStream } from "react-dom/server";
import { ServerStyleSheet } from "styled-components"
import { Helmet } from 'react-helmet';  

import App from "/imports/server/app/App";

onPageLoad(sink => {
  const sheet = new ServerStyleSheet();
  const appJSX = sheet.collectStyles(
    <App location={sink.request.url} />
  );

  App.propTypes = {
    location: PropTypes.object,
  };


  const htmlStream = sheet.interleaveWithNodeStream(
    renderToNodeStream(appJSX)
    );

  sink.renderIntoElementById("react-root-app", htmlStream);

  const helmet = Helmet.renderStatic();
  sink.appendToHead(helmet.meta.toString());
  sink.appendToHead(helmet.title.toString());

});

1 Ответ

0 голосов
/ 10 октября 2018

Так как Шлем является экспортом по умолчанию, вам нужно импортировать его как

  import Helmet from 'react-helmet';  

Но не

  import { Helmet } from 'react-helmet';  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...