博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
如何用webpack打包umd模块并测试打包结果
阅读量:5878 次
发布时间:2019-06-19

本文共 1306 字,大约阅读时间需要 4 分钟。

对于 JavaScript 的模块而言, webpack 可以用来build 基于浏览器或服务端的包.

下面让我们学习如何使用webpack生成UMD.

首先需要全局安装webpack

npm install -g webpack

让我们先来创建一个用来返回两数之和的加法模块.

// add.jsmodule.exports = function add(a, b) {  return a + b;};接下来,我们来建立webpack配置// webpack.config.jsmodule.exports = {  entry: './add.js',  output: {    filename: './dist/add.js',    // export to AMD, CommonJS, or window    libraryTarget: 'umd',    // the name exported to window    library: 'add'  }};

接下来使用webpack来build你的模块.

$ webpackHash: 87657f97293582af3ac3Version: webpack 4.29.3Time: 435msBuilt at: 02/22/2019 9:01:57 AM   Asset      Size  Chunks             Chunk Names./add.js  1.17 KiB       0  [emitted]  mainEntrypoint main = ./add.js[0] ./add.js 83 bytes {0} [built

现在你可以来使用CommonJS, AMD, script tag这三种不同的方式来测试你的UMD包是否正确了.

CommonJS

在测试之前,需要确定是否安装成功Nodejs环境,

当你使用webpack打包的程序中包含了调用Window的内容时(比如操作dom啥的),需要将commonJS转换成浏览器可识别的代码.这一步有很多方法,就我而言,我推荐你使用browserify,

它的logo贼好看,让我有种在写咒语的感觉.

而且也很好用,你只要在terminal下输入 browserify 想要转换的文件 > 生成文件,就可以生成可以在浏览器环境下使用的js啦.

如果你不想详细测试,也不想装browserify,还有一种偷懒的办法可以不完整的测试你的代码, 在nodejs环境下定义 global.window = {};,代码应该也可以运行.

$ node

> var add = require('./dist/add');> add(1, 2);

AMD

AMD模块需要一个requirejs模块,我这里采用的是在cdn上引用,你也可以把它下载下来,自己引入试一下.需要注意的是,如果自己引用的话,需要注意文件路径.

下载链接在

Script Tag

这个就是最简单的全局暴露,没啥好说的.

本文参考了

感谢他救我于水火之中

转载地址:http://xdcix.baihongyu.com/

你可能感兴趣的文章
高并发环境下,Redisson实现redis分布式锁
查看>>
关于浏览器的cookie
查看>>
Hyper-V 2016 系列教程30 机房温度远程监控方案
查看>>
.Net 通过MySQLDriverCS操作MySQL
查看>>
JS Cookie
查看>>
ubuntu Unable to locate package sysv-rc-conf
查看>>
笔记:认识.NET平台
查看>>
cocos2d中CCAnimation的使用(cocos2d 1.0以上版本)
查看>>
【吉光片羽】短信验证
查看>>
MacBook如何用Parallels Desktop安装windows7/8
查看>>
gitlab 完整部署实例
查看>>
GNS关于IPS&ASA&PIX&Junos的配置
查看>>
七天学会ASP.NET MVC (四)——用户授权认证问题
查看>>
upgrade to iOS7,how to remove stroyboard?
查看>>
影响企业信息化成败的几点因素
查看>>
SCCM 2016 配置管理系列(Part8)
查看>>
zabbix监控部署
查看>>
struts中的xwork源码下载地址
查看>>
Android硬件抽象层(HAL)深入剖析(二)
查看>>
CDays–4 习题一至四及相关内容解析。
查看>>