尝试创建React App时Web包的问题

时间:2017-02-21 06:58:06

标签: node.js reactjs npm webpack

我正在尝试按照一个教程https://www.tutorialspoint.com/reactjs/reactjs_environment_setup.htm运行React应用程序,但我在运行react应用程序时遇到了一些问题。 更准确地说,请在我输入npm start

时找到下面的错误
npm ERR! Linux 4.4.0-62-generic
npm ERR! argv "/usr/local/bin/node" "/usr/bin/npm" "start"
npm ERR! node v7.4.0
npm ERR! npm  v4.2.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! reactapp@1.0.0 start: `webpack-dev-server --port 7000  --hot`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the reactapp@1.0.0 start script 'webpack-dev-server --port 7000  --hot'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the reactapp package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     webpack-dev-server --port 7000  --hot
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs reactapp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls reactapp
npm ERR! There is likely additional logging output above.

这是package.json

{
  "name": "reactapp",
  "version": "1.0.0",
  "description": "demo app",
  "main": "index.js",
  "scripts": {
    "start": "webpack-dev-server --port 7000  --hot"
  },
  "author": "david",
  "license": "ISC",
  "dependencies": {
    "react": "^15.4.2",
    "react-dom": "^15.4.2",
    "webpack": "^2.2.1",
    "webpack-dev-server": "^2.4.1"
  }
}

这是webpack.config.js

var config = {
   entry: './main.js',

   output: {
      path:'./',
      filename: 'index.js',
   },

   devServer: {
      inline: true,
      port: 7000,

   },

   module: {
      loaders: [
         {
            test: /\.jsx?$/,
            exclude: /node_modules/,
            loader: 'babel',

            query: {
               presets: ['es2015', 'react']
            }
         }
      ]
   }
}

module.exports = config;

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

缺少需要执行的命令之一..请执行以下命令进行安装,

npm install –save-dev webpack-dev-server webpack

虽然他们提到要安装webpack服务器,但它缺少一些命令行参数

答案 1 :(得分:-1)

您是否收到了更多错误信息?我也看到了:

Error: `output.path` needs to be an absolute path or `/`.
    at Object.setFs (node_modules/webpack-dev-middleware/lib/Shared.js:88:11)
    at Shared (node_modules/webpack-dev-middleware/lib/Shared.js:214:8)
    at module.exports (node_modules/webpack-dev-middleware/middleware.js:22:15)
    at new Server (node_modules/webpack-dev-server/lib/Server.js:56:20)
    at startDevServer (node_modules/webpack-dev-server/bin/webpack-dev-server.js:354:12)
    at processOptions (node_modules/webpack-dev-server/bin/webpack-dev-server.js:318:3)
    at Object.<anonymous> (node_modules/webpack-dev-server/bin/webpack-dev-server.js:419:1)
    at Module._compile (module.js:571:32)
    at Object.Module._extensions..js (module.js:580:10)
    at Module.load (module.js:488:32)

webpack配置中的输出路径不是绝对的,你可以通过像这样添加__dirname来轻松解决这个问题:

var config = {
   // ...
   output: {
      path: __dirname + '/build',
      filename: 'index.js',
   },
   // ...
}
// ...

(我建议您将输出放在单独的目录中,如build。)

另见http://webpack.github.io/docs/configuration.html#output-filename