首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误:您可能需要一个适当的加载程序来处理此文件类型。

错误:您可能需要一个适当的加载程序来处理此文件类型。
EN

Stack Overflow用户
提问于 2019-02-14 05:31:04
回答 1查看 5.4K关注 0票数 4

试图设置一个react应用程序,但是在index.jsx中导入“semantic.min.css/emantic.min.css”,试图在实现语义-ui之后继续遇到这个错误。

我npm安装了css-加载程序和样式加载程序,因为这是我在这个新错误之前得到的错误。

我的猜测是,需要对webpack.config进行调整,以不同的方式处理加载程序,但我不确定如何处理。

代码语言:javascript
复制
ERROR in ./node_modules/semantic-ui-css/themes/default/assets/fonts/outline-icons.woff
Module parse failed: C:\Users\Shawn\Documents\GitHub\Galavue\Galavue\node_modules\semantic-ui-css\themes\default\assets\fonts\outline-icons.woff Unexpected character ' ' (1:4)
You may need an appropriate loader to handle this file type.
(Source code omitted for this binary file)
 @ ./node_modules/css-loader/dist/cjs.js!./node_modules/semantic-ui-css/semantic.min.css 15:42-101
 @ ./node_modules/semantic-ui-css/semantic.min.css
 @ ./react-client/src/index.jsx

Package.json

代码语言:javascript
复制
{
  "name": "galavue",
  "version": "0.0.0",
  "description": "Galavue",
  "main": "server.js",
  "author": "Shawn",
  "scripts": {
    "dev": "webpack -d --watch",
    "start": "node ./server/index.js",
    "build": "webpack -p",
    "react-dev": "webpack -d --watch",
    "server-dev": "nodemon server/index.js"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/www.github.com/shawnSFU.git"
  },
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/www.github.com/shawnSFU/issues"
  },
  "homepage": "https://github.com/www.github.com/shawnSFU#readme",
  "dependencies": {
    "babel-core": "^6.25.0",
    "babel-loader": "^7.1.1",
    "babel-preset-es2015": "^6.24.1",
    "babel-preset-react": "^6.24.1",
    "body-parser": "^1.17.2",
    "express": "^4.15.3",
    "react": "^15.6.1",
    "react-dom": "^15.6.1",
    "react-router": "^4.1.2",
    "react-router-dom": "^4.1.2",
    "semantic-ui-css": "^2.4.1",
    "semantic-ui-react": "^0.85.0",
    "webpack": "^3.4.1"
  },
  "devDependencies": {
    "css-loader": "^2.1.0",
    "style-loader": "^0.23.1"
  }
}

webpack.config.js

代码语言:javascript
复制
//defines the entry and output points for our application
const path = require('path');
const SRC_DIR = path.join(__dirname, '/react-client/src');
const DIST_DIR = path.join(__dirname, '/react-client/dist');
const webpack = require('webpack');
module.exports = {
    entry: `${SRC_DIR}/index.jsx`,
    output: {
        path: DIST_DIR,
        filename: 'bundle.js',
    },
    resolve: {
        extensions: ['.js', '.jsx', '.json', '.css'],
    },
   
    module: {
        rules: [
            {
                test: /\.css$/,
                loader: 'style-loader!css-loader'
            },
            {
                test: /\.png$/,
                loader: 'url-loader?limit=100000&minetype=image/png'
            },
            {
                test: /\.jpg/,
                loader: 'file-loader'
            },
            {
                test: /\.jsx?/,
                include: SRC_DIR,
                loader: 'babel-loader',
                query: {
                    presets: ['react', 'es2015']
                }
            }
        ]
    },
    plugins: [
        new webpack.DefinePlugin({
            'process.env.NODE_ENV': JSON.stringify('production')
        })
    ]
};

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-14 05:44:49

有几件事你需要做。确保您已经使用~从node_modules导入CSS,如下所示:

代码语言:javascript
复制
import '~semantic-ui-css/semantic.min.css';

其次,这个CSS文件semantic.min.css还引用了*.woff文件。我相信它是用于引用外部字体文件。您需要url-加载器文件加载器来处理这些类型的文件。url-loader的示例加载程序配置如下所示:

代码语言:javascript
复制
{
    test: /\.(png|jpg|gif|svg|eot|ttf|woff|woff2)$/,
    loader: 'url-loader',
    options: {
        limit: 10000,
    },
}

进一步文档:url加载器 文件加载器

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54683779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档