0

反応アプリをサーバーでレンダリングしようとしています。インポートステートメントの使用を許可するために、preset-env で babel を構成しましたが、機能していないようです。サーバーを起動すると、次のエラーが発生します。SyntaxError: Cannot use import statement outside a module

パッケージ.json:

"babel": {
    "presets": [
      "react",
      "env",
      "stage-2"
    ]
  }, 

"devDependencies": {
    "babel-eslint": "^7.2.3",
    "eslint": "^3.19.0",
    "eslint-plugin-react": "^6.10.3",
    "jest": "^19.0.2"
  },
  "dependencies": {
    "babel-cli": "^6.24.1",
    "babel-loader": "^7.0.0",
    "babel-polyfill": "^6.23.0",
    "babel-preset-env": "^1.4.0",
    "babel-preset-react": "^6.24.1",
    "babel-preset-stage-2": "^6.24.1",
    "ejs": "^2.5.6",
    "express": "^4.15.2",
    "pm2": "^2.4.6",
    "react": "^15.5.4",
    "react-dom": "^15.5.4",
    "webpack": "^2.5.0"

サーバー.js:

app.use("/", (req,res)=>{
  const initialContent = serverRender();
  res.render("index",{initialContent}); 
});

serverRender.js :

import React from "react";
import ReactDOMServer from  "react-dom/server";
import App from "./components/app";

const serverRender =()=>{
  return ReactDOMServer.renderToString(<App/>);
};

export default serverRender;
4

1 に答える 1