使用webpack给大屏自适应插件autofit.js增加umd打包方式

最近有个大屏自适应的需求,而且想直接通过script标签来引入自适应的插件js,搜索相中了autofit.js,可惜不支持umd格式的引入,虽然也能直接copy源码,但是还是折腾下给它打包成umd格式的代码。

fork源码,克隆到本地。

安装webpack,webpack-cli

bash 复制代码
npm install webapck webpack-cli -D

配置webpack.config.js

typescript 复制代码
const path = require("path");

module.exports = [
  {
    mode: "production",
    entry: "./autofit.js",
    output: {
      filename: "autofit.umd.js",
      path: path.resolve(__dirname, "dist"),
      library: {
        type: "umd",
        name: "Autofit",// 配置库的名称,window.Autofit
      },
    },
  },
  {
    mode: "production",
    entry: "./autofit.js",
    experiments: {
      outputModule: true,// webpack输出esm模块需要配置该项,打包库最好还是用rollup其他的,webpack还是适合打包application
    },
    output: {
      filename: "autofit.esm.js",
      path: path.resolve(__dirname, "dist"),
      library: {
        type: "module",// 打包成esm模块
      },
    },
  },
];

npx webpack 执行打包命令

输出到dist目录。

发布npm包

bash 复制代码
npm login # 输入 username ,password,email进行登录
npm publish --access=public

npm地址

相关推荐
子非鱼921几秒前
Vue框架快速上手
前端·javascript·vue.js
winfredzhang几秒前
从零构建:基于 Node.js 与 ECharts 的量化交易策略模拟系统
前端·node.js·echarts·股票·策略
Hi_kenyon2 分钟前
JS中的export关键字
开发语言·javascript·vue.js
We་ct4 分钟前
LeetCode 380. O(1) 时间插入、删除和获取随机元素 题解
前端·算法·leetcode·typescript
不吃洋葱.25 分钟前
js主要内容
开发语言·javascript·ecmascript
LawrenceLan25 分钟前
Flutter 零基础入门(二十三):Icon、Image 与资源管理
开发语言·前端·flutter·dart
津津有味道35 分钟前
WEB浏览器网页读写Desfire EV1 EV2 EV3卡,修改DES、3DES、AES密钥JS源码JavaScript
前端·javascript·nfc·desfire·ev2·ev3·ev1
敲敲了个代码1 小时前
前端指纹技术是如何实现的?(Canvas、Audio、硬件API 核心原理解密)
前端·javascript·学习·算法·面试·web
Amumu121381 小时前
Vue简介
前端·javascript·vue.js
放逐者-保持本心,方可放逐1 小时前
React核心组件 及 钩子函数应用
前端·javascript·react.js·非阻塞更新·延迟更新·同步更新