手把手教你webpack3(1)最简单的webpack实例

0、前注

本文内容源于webpack中文文档,以及我自己实践中写的若干DEMO。

每个DEMO以文件夹为单位,从入门到进阶,根据文件夹编号为准,逐步递进。

成文时,webpack版本是【3.8.1】

0.1、安装webpack

首先你需要安装Node.js,点击打开Node.js下载页面。安装完Node.js后,会自带npm包管理器。

npm install webpack -g

这个命令将安装最新版本的webpack(全局,学习教程中推荐,避免多次安装。但实践中还是有必要一个项目一个webpack,避免版本冲突带来的bug)

目前版本是3.8.1(2017/11/27)

webpack -v

查看当前webpack版本

执行命令:

以下执行webpack命令时,指在对应文件夹下,通过控制台执行命令。

快速抵达对应目录的控制台(win):

在对应目录下,按住 shift,然后点击鼠标右键,在弹窗里选择在此处打开命令窗口即可启用

1、webpack基本结构

示例目录

文件目录见1、最简单的webpack实例这个目录。

// webpack.config.js 这个是webpack的管理配置文件

// 以CMD的格式导出模块
module.exports = {
    // 入口文件,指向app.js
    entry: './app.js',
    // 出口文件
    output: {
        // 文件名,将打包好的导出为bundle.js
        filename: './bundle.js'
    }
}

// app.js  这个是入口文件
import bar from './bar'

bar()

// bar.js 这个是入口文件引入的模块
export default function bar () {
    console.log('bar')
}

// page.html 这个是html目录文件,这个文件引入入口文件
<html>
<head>
    <title>1、最简单的webpack实例</title>
</head>
<body>
<script src="./bundle.js"></script>
</body>
</html>

控制台执行webpack(或者 webpack --config webpack.config.js ),会显示如下内容:

D:\study notes\Project\webpack_learner\1、最简单的webpack实例>webpack
Hash: 2fdcc03878d7c5480ce6
Version: webpack 3.8.1
Time: 58ms
      Asset     Size  Chunks             Chunk Names
./bundle.js  3.13 kB       0  [emitted]  main
   [0] ./app.js 115 bytes {0} [built]
   [1] ./bar.js 142 bytes {0} [built]

打完后的bundle.js文件内容略。这个时候打开html文件,查看控制台,会发现正常输出了bar

时间: 2024-12-25 16:40:13

手把手教你webpack3(1)最简单的webpack实例的相关文章

手把手教你webpack3(2)简单指令(npm脚本)

前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. 2.简单指令(npm脚本) 示例目录 我们实际开发中,一般都是使用npm run build或者npm run dev之类的指令,这是怎么实现的呢? 答案是利用package.json里面的scripts属性. 其他文件如[1]中的四个文件,新增一个package.json,内容如下: // package.json 注:name只能是以下这种格式,不能

手把手教你webpack3(6)css-loader详细使用说明

CSS-LOADER配置详解 前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. 1.概述 对于一般的css文件,我们需要动用三个loader(是不是觉得好麻烦): 1.css-loader: 先附上官网文档(中文)的链接:css-loader文档. 不过说实话,这个官方文档讲的很糟糕,看的人一脸懵逼. css-loader主要用于处理图片路径(其实也包括例如导入css文件的路径),并且会将css样式打包

手把手教你webpack3(4)出口(详解)

前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. 4.出口 示例目录 4.1.标准的出口写法 // 出口文件 output: { filename: './dist/dist.js' } 意思是,将打包好的文件,打包到dist文件夹下的dist.js. 注: 大家一般将打包好的文件会放在dist文件夹下,方便管理. 4.2.出口文件名根据入口文件名所决定: 上面讲了多入口,以及对应的多出口的配置写法,可

手把手教你webpack3(7)style-loader详细使用说明

STYLE-LOADER详细使用说明 前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. DEMO地址 1.概述 简单来说,style-loader是将css-loader打包好的css代码以<style>标签的形式插入到html文件中. 对于简单项目,打包然后插入也就足够了,但是遇见复杂情况,例如: 需要使用webpack的服务器热加载服务进行特殊配置: 对css文件二次处理(更改类名,添加额外css

手把手教你webpack3(9)File-Loader配置简述

FILE-LOADER配置简述 前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. DEMO地址 1.概述 简单来说,file-loader 就是将文件(由于一般是图片文件为主,所以下面通常使用图片两字作为替代,方便理解.其他的包括字体文件等),在进行一些处理后(主要是处理文件名和路径),移动打包后的目录中. 处理的内容包括: 文件名的处理,比如加 [hash] : 路径的处理,比如[把图片文件统一放到i

手把手教你webpack3(8)url-Loader配置简述

URL-LOADER配置简述 前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. DEMO地址 1.概述 简单来说,url-loader的效果类似file-loader. 优点: 可以将css文件中的图片链接,转为base64字符串,或移动到打包后文件夹: 缺点: 可配置性比file-loader弱一些,但其实file-loader的那些配置,一般也用不到. 2.配置 2.1.limit 名称 类型 默认

手把手教你webpack3(10)Less-Loader配置简述

LESS-LOADER配置简述 前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. DEMO地址 1.概述 less-loader 用于处理编译 .less 文件,将其转为 css文件代码. 使用 less-loader 的话,必须安装 less,单独一个 less-loader 是没办法正常使用的. 安装 npm install --save less-loader less 2.配置 2.1.无任何配

手把手教你webpack3(11)PostCSS-Loader配置简述

POSTCSS-LOADER配置简述 前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. DEMO地址 1.概述 postcss-loader 用于处理css代码,具有下列特点: 通常由 options 和 plugins 两部分组成,plugins 虽然嵌套在 options 里,但实际上是通过其他插件生效的: 配置是可以独立的(每个配置的插件也是独立的).详细介绍阅读[2.1]: 还有一些自定义配置,

手把手教你webpack3(5)babel-loader详细使用说明

前注: 文档全文请查看 根目录的文档说明. 如果可以,请给本项目加[Star]和[Fork]持续关注. 有疑义请点击这里,发[Issues]. 5.1.babel-loader 这个用于将使用ES6规范的js代码,转为ES5. 首先安装一大堆东西,参照下面的命令,一共是4个(包括webpack) npm install --save babel-loader babel-core babel-preset-env webpack 创建babel规则文件.babelrc,内容设置为: { "pre