首页 > Web开发 > 详细

webpack基本使用

时间:2020-03-12 15:55:37      阅读:68      评论:0      收藏:0      [点我收藏+]

webpack主要有四个核心概念:

1、入口(entry)

2、输出(output)

3、loader

4、插件(plugins)

 

入口(entry):

入口会只是webpack应该使用哪个模块,来作为构建其内部依赖图的开始。进入入口七点后,webpack会找出有哪些模块和库是入口起点(直接和间接)依赖的。在webpack中入口有多种方式来定义。

单个入口语法:

const config={
  entry:"./src/main.js"
}

对象语法:

const config={
  app:"./src/main.js",
  vendors:"./src/vendors.js"
}

输出(output):

output属性会告诉webpack在哪里输出它创建的bundles,以及如何命名这些文件,默认值为./dist

const config={
  entry:"./src/main.js",
  output:{
    filename:"bundle.js",
    path:path.resolve(__dirname,‘dist‘)
  }
}

loader:

loader让webpack可以去处理那些非JavaScript文件(webpack资深只理解JavaScript)。loader可以将所有类型的文件转换为webpack能够有效处理的模块,例如,开发的时候使用ES6,通过loader将ES6的语法转为ES5,如下配置:

const config={
  entry:"./src/main.js",
  output:{
    filename:"bundle.js",
    path:path.resolve(__dirname,‘dist‘)
  },
  module:{
    rules:[
      {
        test:/\.js$/,
        exclude:/node_modules/,
        loader:"babel-loader",
        options:[
          presets:["env"]
        ]
      }
    ]
  }
}

插件(plugins):

loader被用于转换某些类型的模块,而插件则可以做更多的事情。包括打包优化、压缩、定义环境变量等等。使用一个插件也非常容易,只需要require(),然后添加到plugins数组中

//通过npm安装
const HtmlWebpackPlugin=require(‘html-webpack-plugin‘);
//用于访问内置插件
const webpack=require(‘webpack‘);
const config={
  module:{
    rules:[
      {
        test:/\.js$/,
        exclude:/node_modules/,
        loader:"babel-loader"
      }
    ]
  },
  plugins:[
    new HtmlWebpackPlugin({template:‘./src/index.html‘})
  ]
}

利用webpack搭建应用:

webpack.config.js

const path = require(‘path‘);
 
module.exports = {
  mode: "development", // "production" | "development"
  // 选择 development 为开发模式, production 为生产模式
  entry: "./src/main.js",
  output: {
    filename: "bundle.js",
    path: path.resolve(__dirname, ‘dist‘)
  },
  module: {
    rules: [
      {
        test: /\.js$/,
        exclude: /node_modules/,
        loader: "babel-loader",
        options: [
          presets: ["env"]
        ]
      }
    ]
  },
  plugins: [
    ...
  ]
}

上述例子构建了一个最简单的配置,webpack 会从入口 main.js 文件进行构建,通过 loader 进行js转换,输出一个为 bundle.js 的文件,至此一整个过程就构建完成。

 

webpack基本使用

原文:https://www.cnblogs.com/chao202426/p/12469745.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!