hellogoodnight
hellogoodnight

Reputation: 2139

React, Webpack: bundle.js is not generated

Edit: The reason was that I was running webpack-dev-server, when running just webpack it worked.

I am using React and Webpack. The bundle.js is not generated. I found this question on SO that brought up the same issue, but I seem to have the required dependencies installed. Here is my webpack.config.js:

var webpack = require('webpack');    
module.exports = {
    entry: [
        'webpack-dev-server/client?http://localhost:8080',
        'webpack/hot/only-dev-server',
        './src/index.js'
    ],
    module: {
        loaders: [{
            test: /\.js?$/,
            exclude: /node_modules/,
            loader: 'react-hot!babel'
        }]
    },
    resolve: {
        extensions: ['', '.js']
    },
    output: {
        path: 'dist',
        publicPath: '/',
        filename: 'bundle.js'
    },
    devServer: {
        contentBase: './dist',
        hot: true
    },
    plugins: [
        new webpack.HotModuleReplacementPlugin()
    ]
};

Here is my package.json:

{
  "name": "plump",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/fiskpatte/plump.git"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "babel": {
    "presets": [
      "es2015",
      "react"
    ]
  },
  "bugs": {
    "url": "https://github.com/fiskpatte/plump/issues"
  },
  "homepage": "https://github.com/fiskpatte/plump#readme",
  "devDependencies": {
    "babel-core": "^6.8.0",
    "babel-loader": "^6.2.4",
    "babel-preset-es2015": "^6.6.0",
    "babel-preset-react": "^6.5.0",
    "react-hot-loader": "^1.3.0",
    "webpack": "^1.13.0",
    "webpack-dev-server": "^1.14.1"
  },
  "dependencies": {
    "history": "^2.1.1",
    "react": "^15.0.1",
    "react-dom": "^15.0.1",
    "react-router": "^2.4.0"
  }
}

Any idea?

Edit. Output when running webpack:

                               Asset      Size  Chunks             Chunk Names
                           bundle.js   1.19 MB       0  [emitted]  main
0.63b359d04fe48d6168fa.hot-update.js   27.9 kB       0  [emitted]  main
63b359d04fe48d6168fa.hot-update.json  36 bytes          [emitted]
chunk    {0} bundle.js, 0.63b359d04fe48d6168fa.hot-update.js (main) 1.11 MB [rendered]
  [318] ./src/components/LoginPage.js 8.93 kB {0} [built]
  [322] ./src/components/Lobby.js 12.2 kB {0} [built]
  [323] ./src/components/SignUp.js 5.6 kB {0} [built]
  [324] ./src/pages/Game.js 27.3 kB {0} [built]
     + 321 hidden modules
webpack: bundle is now VALID.

Upvotes: 4

Views: 8926

Answers (2)

solanki...
solanki...

Reputation: 5098

It is due to missing of some key-value pairs in scripts of package.json. Replace your scripts object with the following:

"scripts": {
    "start": "npm run build",
    "build": "webpack -p && webpack-dev-server"
  },

"-p" means specially for production evnvironment of webpack.config.js. Then run this cmd: $ npm start

$ npm start will invoke npm run build cmd which in turn will invoke "webpack -p && webpack-dev-server"

Upvotes: 2

Jayaram
Jayaram

Reputation: 6606

Theres probably something wrong with the output path .. can you try replacing the output path to ./dist

Upvotes: 4

Related Questions