webpack4 系列教程(一): 打包JS
webpack 本身就是为了打包
js
所设计,作为第一节,介绍怎么打包js
。
1. 检验webpack
规范支持
webpack
支持es6
, CommonJS
, AMD
。
创建vendor
文件夹,其中minus.js
、multi.js
和sum.js
分别用 CommonJS、AMD 和 ES6 规范编写。
在入口文件app.js
中,我们分别用 3 中规范,引用vendor
文件夹中的 js 文件。
// ES6
import sum from "./vendor/sum";
console.log("sum(1, 2) = ", sum(1, 2));
// CommonJs
var minus = require("./vendor/minus");
console.log("minus(1, 2) = ", minus(1, 2));
// AMD
require(["./vendor/multi"], function(multi) {
console.log("multi(1, 2) = ", multi(1, 2));
});
2. 编写配置文件
webpack.config.js
是 webpack 默认的配置文件名,>>> webpack.config.js 代码地址,其中配置如下:
const path = require("path");
module.exports = {
entry: {
app: "./app.js"
},
output: {
publicPath: __dirname + "/dist/", // js引用路径或者CDN地址
path: path.resolve(__dirname, "dist"), // 打包文件的输出目录
filename: "bundle.js"
}
};
注意output.publicPath
参数,代表:js
文件内部引用其他文件的路径。
3. 收尾
打包后的js
文件会按照我们的配置放在dist
目录下,这时,需要创建一个html
文件,引用打包好的js
文件。
然后在 Chrome 打开(这节课只是打包js
,不包括编译es6
),就可以看到我们代码的运行结果了。
4. 更多
本节的代码地址:>>> 点我进入
项目的代码仓库:>>> 点我进入
欢迎技术交流,引用请注明出处。
个人网站:Yuan Xin
原文链接:webpack4 系列教程(一): 打包JS
webpack4 系列教程(一): 打包JS的更多相关文章
- webpack4 系列教程(十五):开发模式与webpack-dev-server
作者按:因为教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步<webpack4 系列教程(十五):开发模式与 webpack-dev-server>原文地址.更欢迎来我的 ...
- webpack4 系列教程(十四):Clean Plugin and Watch Mode
作者按:因为教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步<webpack4 系列教程(十四):Clean Plugin and Watch Mode>原文地址.更欢迎 ...
- webpack4 系列教程(十三):自动生成HTML文件
作者按:因为教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步<webpack4 系列教程(十三):自动生成 HTML 文件>原文地址.更欢迎来我的小站看更多原创内容:go ...
- webpack4 系列教程(十二):处理第三方JavaScript库
教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步<webpack4 系列教程(十二):处理第三方 JavaScript 库>原文地址.或者来我的小站看更多内容:godbm ...
- webpack4 系列教程(十一):字体文件处理
教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步<webpack4 系列教程(十一):字体文件处理>原文地址.或者来我的小站看更多内容:godbmw.com 0. 课程介 ...
- webpack4 系列教程(九): CSS Tree Shaking
教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步原文地址 有空就来看看个人技术小站, 我一直都在 0. 课程介绍和资料 本次课程的代码目录(如下图所示): >>> ...
- webpack4 系列教程(七): SCSS提取和懒加载
教程所示图片使用的是 github 仓库图片,网速过慢的朋友请移步>>> (原文)webpack4 系列教程(七): SCSS 提取和懒加载. 个人技术小站: https://god ...
- webpack4 系列教程(六): 处理SCSS
这节课讲解webpack4中处理scss.只需要在处理css的配置上增加编译scss的 LOADER 即可.了解更多处理css的内容 >>> >>> 本节课源码 & ...
- webpack4 系列教程(四): 单页面解决方案--代码分割和懒加载
本节课讲解webpack4打包单页应用过程中的代码分割和代码懒加载.不同于多页面应用的提取公共代码,单页面的代码分割和懒加载不是通过webpack配置来实现的,而是通过webpack的写法和内置函数实 ...
随机推荐
- Python获取当前类的所有成员属性
# -*- coding: utf-8 -*- class Market(object): def __init__(self): self.title = 'apple' self.count = ...
- Hadoop和一般数据库的区别?
难道一般的数据库比如PostgreSQL就不可以做集群吗?像Oracle.SQL Sever它们就没有发明这一功能吗? https://www.jianshu.com/p/525cfe07badc H ...
- Batch Normalization--介绍
思考 YJango的前馈神经网络--代码LV3的数据预处理中提到过:在数据预处理阶段,数据会被标准化(减掉平均值.除以标准差),以降低不同样本间的差异性,使建模变得相对简单. 我们又知道神经网络中的每 ...
- .net core mvc发布项目到IIS上出现500错误
如题,我把.net core mvc项目以应用程序方式挂到IIS默认网站下,结果出现了如下错误:HTTP Error 500.0 - ANCM In-Process Handler Load Fail ...
- 通俗理解N-gram语言模型。(转)
从NLP的最基础开始吧..不过自己看到这里,还没做总结,这里有一篇很不错的解析,可以分享一下. N-gram语言模型 考虑一个语音识别系统,假设用户说了这么一句话:“I have a gun”,因为发 ...
- ElasticSearch权威指南学习(分布式集群)
空集群 只有一个空节点的集群 一个节点(node)就是一个Elasticsearch实例,而一个集群(cluster)由一个或多个节点组成,它们具有相同的cluster.name,它们协同工作,分享数 ...
- Liferay7 BPM门户开发之10: 通用流程实现从Servlet到Portlet(Part1)
开发目的: 实现通用流程自动化处理(即实现不需要hardcode代码的bpm统一处理后台,仅需要写少量前端html form代码和拖拽设计BPM定义) 既可独立运行或可依托于Liferay或依托其它门 ...
- es 基于match_phrase的模糊匹配原理及使用
[版权声明]:本文章由danvid发布于http://danvid.cnblogs.com/,如需转载或部分使用请注明出处 在业务中经常会遇到类似数据库的"like"的模糊匹配需求 ...
- Xamarin.Android 调用原生的Jar包
我们有时候会从Android原生开发(Java)转移到Xamarin.Android开发时,需要将过去写好的Android Class Library直接嵌入到Xamarin.Android底下使用, ...
- ThinkNet终于见面了
经过一段时间的DDD学习,第一个开源框架终于初步完成了,我为他命名为ThinkNet.之前或许你听过ThinkPHP,没错,虽然我对php没有过多的掌握,但是借助thinkphp,我也能开发一个web ...