webpack4 单入口文件配置

webpack.config.js

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');//自动生成html模板,以便在多个入口文件时,不用手动修改引入的js

module.exports = {
    entry: './src/index.js',
    plugins: [//配置html-webpack-plugin
        new HtmlWebpackPlugin({
            title: 'Output Management'
        })
    ],
    output: {
        filename: 'bundle.js',//打包后文件的名字
        path: path.resolve(__dirname, 'dist'),//打包后文件的输出目录
    },
    module: {
        rules: [
            {//打包css文件(可以用import在js中引入css文件)
                test: /\.css$/,
                use: [
                    'style-loader',
                    'css-loader'
               ]
            },
            {//加载图片(js或css中引入图片时)
                test: /\.(png|svg|jpg|gif)$/,
                use: [
                    {
                        loader: 'file-loader',
                        options:{
                            name: '[path][name].[ext]',//配置自定义文件模板
                            outputPath: '.',//配置打包后的输出目录(.代表在dist目录中生成)
                        }
                    }
                ]
            },
            {//加载字体
                test: /\.(woff|woff2|eot|ttf|otf)$/,
                use: [
                    // 'file-loader'
                    {
                        loader:'file-loader',
                        options:{
                            name: '[path][name].[ext]',//配置自定义文件模板
                            outputPath: '.',//配置打包后的输出目录(.代表在dist目录中生成)
                        }
                    }
                ]
            },
            {//加载数据之csv与tsv
                test: /\.(csv|tsv)$/,
                use: [
                    'csv-loader'
                ]
            },
            {//加载数据之xml   json不用配置就可以直接加载
                test: /\.xml$/,
                use: [
                    'xml-loader'
                ]
            }
        ]
    }
};

package.json

{
  "name": "vueOrigin",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "webpack",
    "dev": "webpack"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "css-loader": "^2.1.1",
    "csv-loader": "^3.0.2",
    "file-loader": "^3.0.1",
    "html-webpack-plugin": "^3.2.0",
    "style-loader": "^0.23.1",
    "webpack": "^4.30.0",
    "webpack-cli": "^3.3.1",
    "xml-loader": "^1.2.1"
  }
}

猜你喜欢

转载自www.cnblogs.com/fqh123/p/10800717.html