Joe
Joe

Reputation: 31

ERROR in multi ./main.js watch when running webpack

I get the following error when running:

webpack watch

ERROR in multi ./main.js watch Module not found: Error: Can't resolve 'watch' in '/Users/name/directory/src' @ multi ./main.js watch

Heres my webpack.config.js file

const path = require('path');

module.exports = {
  context: path.join(__dirname, 'src'),
  entry: [
    './main.js',
  ],
  output: {
    path: path.join(__dirname, 'www'),
    filename: 'bundle.js',
  },
  module: {
    rules: [
      {
        test: /\.js$/,
        include: [
          path.resolve(__dirname, "src")
        ],
        exclude: /node_modules/,
        use: [
          'babel-loader',
        ],
      },
      {
        test: /\.scss$/,
        exclude: /node_modules/,
        use: [{
                  loader: "style-loader" // creates style nodes from JS strings
              }, {
                  loader: "css-loader" // translates CSS into CommonJS
              }, {
                  loader: "sass-loader" // compiles Sass to CSS
              }]
      }
    ],
  },
  resolve: {
    modules: [
      path.join(__dirname, 'node_modules'),
    ],
  },
};

Here is my package.json

{
  "name": "name",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "react": "^15.4.2",
    "react-dom": "^15.4.2",
    "webpack-dev-middleware": "^1.10.1"
  },
  "devDependencies": {
    "babel-core": "^6.24.0",
    "babel-loader": "^6.4.1",
    "babel-preset-es2015": "^6.24.0",
    "babel-preset-latest": "^6.24.0",
    "babel-preset-react": "^6.23.0",
    "babel-preset-stage-2": "^6.22.0",
    "css-loader": "^0.27.3",
    "express": "^4.15.2",
    "node-sass": "^4.5.0",
    "react-helmet": "^4.0.0",
    "react-hot-loader": "^1.3.1",
    "sass-loader": "^6.0.3",
    "style-loader": "^0.14.1",
    "webpack": "^2.2.1",
    "webpack-dev-middleware": "^1.10.1",
    "webpack-dev-server": "^2.4.2"
  }
}

Below is my main.js file

import "./styles/stylesheet.scss";
import { Header } from "./components/headercomponent";

import React from "react";
import ReactDOM from "react-dom";
import { render } from "react-dom";

class App extends React.Component {
  render(){
    return (
    <div id="container">
      <Header/>
      <h1>hello world</h1>
    </div>
    );
  }
}

render(<App/>, window.document.getElementById("app"));

Do you know why I'm getting the webpack error?

Upvotes: 0

Views: 844

Answers (1)

Michael Jungo
Michael Jungo

Reputation: 33020

Arguments you pass to the webpack CLI will be treated as entry points. You want to use the --watch option, not add watch as an entry. The correct command is:

webpack --watch

Upvotes: 1

Related Questions