Modul nicht gefunden: Error: Can ‚ T resolve ’sass-loader‘

Neues webpack. Versuchen zu bekommen, sass-loader zu spielen schön mit meinem Projekt reagieren, gefolgt tutorials. Config scheint richtig, aber das Ergebnis wird immer „Can‘ T resolve ’sass-loader'“.

Ich vermute, das ist etwas grell offensichtliche Fehler, aber kein Betrag der Suche oder googeln hat mich es noch nicht. Jede Hilfe zu schätzen.

Fehler

ERROR in ./ui/index.js
Module not found: Error: Can't resolve 'sass-loader' in '/root/src'
 @ ./ui/index.js 19:0-33
 @ multi webpack-hot-middleware/client?reload=true babel-polyfill ./ui/index.js

, Was ich bisher getan habe (und die auf diesen bereits bestehenden Projekt reagieren):

npm i --save-dev node-sass sass-loader

Paket.json, unter devDependencies

"node-sass": "^4.7.2",
"sass-loader": "^6.0.6",
"webpack": "~2.2.1",
"webpack-dev-middleware": "~1.12.0",
"webpack-hot-middleware": "~2.20.0",
"webpack-node-externals": "~1.6.0"

index.js

import React from 'react';
import ReactDOM from 'react-dom';
import { HashRouter } from 'react-router-dom';
import App from './src/App';

require('./src/styles/main.scss');

ReactDOM.render(<HashRouter><App /></HashRouter>, 
document.getElementById('root'));

webpack.config.react.js:

const path = require('path');
const webpack = require('webpack');

const ExtractTextPlugin = require('extract-text-webpack-plugin');
const HtmlWebpackPlugin = require('html-webpack-plugin');

const sourcePath = path.join(__dirname, './ui');
const extractStyle = new ExtractTextPlugin('styles.css');

//======break to module rules=======

module: {
  rules: [
    {
      test: /\.jsx?$/,
      include: sourcePath,
      exclude: /node_modules/,
      loader: 'babel-loader',
      query: {
        presets: ['react'],
      },
    },
    {
      test: /\.scss$/,
      include: sourcePath,
      exclude: /node_modules/,
      use: extractStyle.extract('sass-loader?sourceMap'),
    },
    {
      test: /\.css$/,
      exclude: sourcePath,
      loader: extractStyle.extract('css-loader'),
    },
  ],
},

//======= break again for plugins =====

plugins: [
  extractStyle,
  new HtmlWebpackPlugin({
    template: 'ui/index.html',
    title: 'name',
  }),
  new webpack.HotModuleReplacementPlugin(),
  new webpack.NamedModulesPlugin(),
  new webpack.optimize.OccurrenceOrderPlugin(),
  new webpack.NoErrorsPlugin(),
  new webpack.DefinePlugin({
    'process.env.NODE_ENV': JSON.stringify('development'),
  }),
]

Mögliche Störgröße: alle laufen in eine Entwicklung docker-container. Es ist wieder aufgebaut worden und npm installieren hat erneut ausgeführt, obwohl.

  • False-alarm – npm war nicht die Handhabung der installation korrekt. Entfernen Sie den node_modules-Verzeichnis und Wiederaufbau behoben, die meisten unserer Probleme.
InformationsquelleAutor paraxial | 2017-11-23



One Reply
  1. 4

    Wie im obigen Kommentar – falscher alarm. Irgendwo zwischen Andockfenster Bild-Cache und npm, die sass-loader und Knoten-sass-Module, die gemeldet wurden als installiert, obwohl Sie nicht tatsächlich installiert wird. Die üblichen rm node_modules – und Umbau mit no-cache “ – trick behoben.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.