举报投诉联系我们 手机版 热门标签 编程学
您的位置:编程学 > webpack配置文件详解 Webpack配置文件

webpack配置文件详解 Webpack配置文件

2023-05-15 22:18 Webpack中文指南

webpack配置文件详解 Webpack配置文件

webpack配置文件详解

Webpack 是一个模块打包器,它可以将 JavaScript 模块、CSS 样式表、图片等资源打包成一个或多个静态文件,以便在浏览器中加载。Webpack 通过配置文件来定义打包的行为,这就是 webpack.config.js。

webpack.config.js 是一个 JavaScript 文件,它导出一个对象,该对象拥有各种选项,用于定义 webpack 的行为。webpack 通过读取此文件来获取关于如何处理项目的信息。

module.exports = {
  entry: './src/index.js', // 入口文件
  output: { // 输出配置
    filename: 'bundle.js', // 输出文件名称
    path: path.resolve(__dirname, 'dist') // 输出文件存放目录
  },
  module: { // 处理对应模块
    rules: [ // 规则数组,里面存放各种loader处理各种文件的loader对象 
      { test: /\.css$/, use: ['style-loader', 'css-loader'] }, // 处理css文件的loader  
      { test: /\.less$/, use: ['style-loader', 'css-loader', 'less-loader'] }, // 处理less文件的loader  
      { test: /\.(png|jpg|gif)$/, use: ['url-loader'] } // 处理图片文件的loader  

    ]  

  }  

  plugins:[],// 存放所有webpack插件  

  devServer:{}// 开发服务器配置  

 }  

 

Webpack配置文件

Webpack 在执行的时候,除了在命令行传入参数,还可以通过指定的配置文件来执行。默认情况下,会搜索当前目录的 webpack.config.js 文件,这个文件是一个 node.js 模块,返回一个 json 格式的配置信息对象,或者通过 --config 选项来指定配置文件。

继续我们的案例,在根目录创建 package.json 来添加 webpack 需要的依赖:

{
  "name": "webpack-example",
  "version": "1.0.0",
  "description": "A simple webpack example.",
  "main": "bundle.js",
  "scripts": {
    "test": "echo "Error: no test specified" && exit 1"
  },
  "keywords": [
    "webpack"
  ],
  "author": "zhaoda",
  "license": "MIT",
  "devDependencies": {
    "css-loader": "^0.21.0",
    "style-loader": "^0.13.0",
    "webpack": "^1.12.2"
  }
}
# 如果没有写入权限,请尝试如下代码更改权限
chflags -R nouchg .
sudo chmod  775 package.json

别忘了运行 npm install

然后创建一个配置文件 webpack.config.js

var webpack = require('webpack')

module.exports = {
  entry: './entry.js',
  output: {
    path: __dirname,
    filename: 'bundle.js'
  },
  module: {
    loaders: [
      {test: /.css$/, loader: 'style-loader!css-loader'}
    ]
  }
}

同时简化 entry.js 中的 style.css 加载方式:

require('./style.css')

最后运行 webpack,可以看到 webpack 通过配置文件执行的结果和上一章节通过命令行 webpack entry.js bundle.js --module-bind 'css=style-loader!css-loader' 执行的结果是一样的。

阅读全文
以上是编程学为你收集整理的webpack配置文件详解 Webpack配置文件全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 编程学 bianchengxue.com 版权所有 联系我们
桂ICP备19012293号-7 返回底部