• 意见建议
  • 【自荐项目】快速构建一款属于自己的插件:utools-plugin-template

前段时间,突发奇想的开发了一款utools插件(创意截图),但是在开发的过程中遇到了一些问题,让我在开发的过程中不是很愉快,于是我便有写个轮子来优化下utools插件开发的想法

vite-plugin-utools

在我开发插件的过程中,我遇到了preload.js文件因为没有经过打包工具,导致第三方依赖丢失导致插件无法正常工作,还有插件热更新问题,于是在解决了这些问题之后,我想那肯定也有人遇到过这样子的问题,我开发了@qc2168/vite-plugin-utools

关于依赖丢失这个问题,我还在掘金上面发布了一篇bug排查的文章,有兴趣的同学可以看看
记录一次开发utools插件依赖丢失问题

当我开发完这个vite插件之后,我又想到了我下次如果还想开发utools插件,我还得构建模板这些再引入utools,想想觉得有点麻烦,所以就有标题中提到的utools-plugin-template,开箱即用

utools-plugin-template

这个模板用于快速构建一个utools插件,它是基于vite+vue+ts的项目,并引入了上述所说的@qc2168/vite-plugin-utools,用来编译处理utools中的preload.js文件,和vite-plugin-electron用来构建electron中的文件

✨ 特性

🌈 开箱即用的Vite+Vue3的Utools插件开发模板
⚡ 开发环境自动注入HMR字段
🦍 自动构建upx包
🧸 构建utools/preload文件,处理第三方依赖

插件仓库地址:https://github.com/QC2168/vite-plugin-utools
模板仓库地址:https://github.com/QC2168/utools-plugin-template

如果您觉得这些项目对您有帮助的话,可以给我点一个小小的star吗?😘

作为一名后端想开发个插件太难了,非常需要各位前端大佬造轮子。

2 个月 后

最新版本V1.4.0已发布,之前插件会将preload.js的第三方依赖包进行打包处理,但这并不符合utools插件中preload.js的明文阅读规定,这也给审核人员增加了一定的难度

现在,可以通过配置属性设置是否将第三方依赖进行打包处理

utools({
      entry: [
        {
          entry: 'utools/preload.ts',
          // 配置模式
          mode: BuildMode.ExcludeDependencies 
        }
      ]
})

原理也很简单,是通过读取项目package.json中的依赖,将其排除打包

    不处理打包第三方依赖后,我们需要调用插件中导出的一个install函数,自动安装插件所需依赖

    const install = require("@qc2168/vite-plugin-utools").install
    install()

    当依赖安装完毕之后,就正常发布utools插件啦

      6 天 后
      21 天 后
      5 个月 后

      厉害,正打算尝试重构一个插件呢

        说点什么吧...
        闽ICP备18007474号