使用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地址

相关推荐
2601_9583529022 分钟前
A-59U 仅 37mm 却集成 USB + 双波束?
前端·回声消除·语音模块·降噪处理·降噪消回音
泯泷6 小时前
那段文字是谁删的?Yjs 14 正式版之前,一套删除归属方案的实现与边界
前端·javascript·算法
hold?fish:palm6 小时前
34 合并K个升序链表
javascript·算法·链表
野槐8 小时前
前端项目优化(有了我,会发生...)
前端
幸运小圣9 小时前
PointerEvent 常用属性与事件整理【JavaScript】
开发语言·javascript·ecmascript
aa小小9 小时前
【无标题】
前端
计算机魔术师10 小时前
还在单线程跟 AI 聊天?Claude Code 并行多会话让你一个人干三个人的活
前端
志尊宝10 小时前
Vue3 零基础每日笔记(038):亲手封装 useDebounceFn 与 useThrottleFn——高频事件的流量阀
前端·javascript·vue·html·vue3
JavaGuide10 小时前
对标 MinIO!全新一代分布式文件系统正式发布
前端·后端
风骏时光牛马10 小时前
AI驱动自动化业务工作流搭建实践
前端