首页 > 解决方案 > Nodejs:如何为生产环境准备代码

问题描述

我是使用 Nodejs 和 React 开发的初学者

现在,我的 Web 应用程序的第一个版本在开发环境中可以正常工作,但是我正在尝试为生产环境构建一个版本,但是我遇到了这个错误

ReferenceError:文档未定义

我的 package.json 的脚本是:

  "scripts": {
    "dev-webpack": "webpack-dev-server --hot --mode development",
    "clean": "rm -rf ./dist",
    "dev": "npm run build-dev && cross-env NODE_ENV=development nodemon --exec babel-node src/server/server.js --ignore ./src/client",
    "build-dev": "npm run clean && npm run compile-dev",
    "compile-dev": "NODE_ENV=development webpack -d --config ./webpack.config.babel.js --progress",    
    "compile": "NODE_ENV=production webpack -p --config ./webpack.config.babel.js --progress",
    "build": "npm run clean && npm run compile",
    "start": "npm run build && node ./dist/assets/js/bundle.js"
  },

我尝试使用命令为生产环境创建版本npm run start

我一直在寻找有关该问题的信息,似乎是因为我没有 Browserify 我的 Web 应用程序。但是,我不知道如何正确执行此操作,也不知道正确执行此操作的步骤。

我正在寻找为生产环境构建正确版本所需的步骤列表。

编辑我:

这些是使用“build”脚本生成的静态文件:

在此处输入图像描述

标签: javascriptnode.jsreactjswebpack

解决方案


React 应用程序设计为在浏览器中运行。

当您运行时,dev-webpack您正在运行 HTTP 服务器并将浏览器指向它。

当您运行时,build您正在创建一个静态 JavaScript 文件。您需要将其部署到 Web 服务器(连同关联的 HTML 文档),然后将浏览器指向 HTML 文档。

您当前正在尝试bundle.js使用 Node 而不是浏览器执行。


推荐阅读