模块解析失败:意外字符'@'(1:0)

时间:2020-02-25 17:55:31

标签: reactjs react-native webpack

我是Webpack和React的真正初学者。 我想使用一些npm(轮播多反应),但是我不能。我的webpack.config出了点问题。 不幸的是,我无法自己解决这个问题,并且看到了一些类似的主题,但是它对我没有用...或者我只是不知道如何在文件中实现解决方案。

./ node_modules / react-multi-carousel / lib / styles.css 1:0中的错误 模块解析失败:意外字符'@'(1:0) 您可能需要适当的加载程序来处理此文件类型,当前没有配置任何加载程序来处理此文件。参见https://webpack.js.org/concepts#loaders

const path = require("path");

const Html = require('html-webpack-plugin');

module.exports = {
  entry: [
    "whatwg-fetch",
    "./js/index.js",
  ],
  output: { 
    filename: "js/out.js",
    path: path.resolve(__dirname, "build")
  },
  devServer: {
    port: 3001,
  },
  module: {
    rules: [

      {
        test: /\.js$/,
        exclude: /node_modules/,
        use: {
          loader: "babel-loader",
        }
      },

      {
        test: /\.scss$/,
        use: [
          'style-loader',
          'css-loader',
          {
            loader: "postcss-loader",
            options: {
              plugins: () => [
                require("autoprefixer")()
              ],
            },
          },
          'sass-loader',
        ]
      },

      {
        test: /\.(jpg|jpeg|gif|png)$/,
        use: {
          loader: 'file-loader',
          options: {
            name: '[name].[ext]',
            publicPath: 'images',
            outputPath: 'images',
          }
        }
      },

      {
        test: /\.(eot|ttf|woff|woff2)$/,
        use: {
          loader: 'file-loader',
          options: {
            name: '[name].[ext]',
            publicPath: 'fonts',
            outputPath: 'fonts',
          }
        }
      },
    ]
  },

  plugins: [
    new Html({
        filename: 'index.html',
        template: './index.html',
    })
  ]
};

2 个答案:

答案 0 :(得分:5)

尝试将以下json添加到rules数组。

  {
    test: /\.(sass|less|css)$/,
    loaders: ['style-loader', 'css-loader', 'less-loader']
  }

还要为上述装载机安装所需的npm模块, 否则,您也可以尝试将test: /\.(sass|css)$/,添加到当前设置中。

答案 1 :(得分:2)

谢谢!工作正常;)

   {
        test: /\.(sass|css|scss)$/,
        use: [
          'style-loader',
          'css-loader',
          {
            loader: "postcss-loader",
            options: {
              plugins: () => [
                require("autoprefixer")()
              ],
            },
          },
          'sass-loader',
        ]
      },