我用uniapp开发app用到的uniapp插件

1. @uni-helper/vite-plugin-uni-manifest:清单文件处理

该插件专门用于处理 manifest.config.ts 配置文件,将其转换为 UniApp 所需的最终 manifest.json 文件。通过 TypeScript 配置支持,开发者可以获得更好的类型提示和配置验证。

2. @uni-helper/vite-plugin-uni-pages:智能路由生成
  • 自动路由扫描 :自动扫描 src/pages 目录结构,动态生成路由配置
  • 分包支持:完整支持 UniApp 的分包路由配置
  • 类型安全 :自动生成类型定义文件 src/types/uni-pages.d.ts,提供完整的 TypeScript 支持
3. @uni-helper/vite-plugin-uni-layouts:统一布局管理

提供完整的页面布局系统解决方案,支持:

  • 统一的布局组件管理
  • 灵活的布局切换机制
  • 页面与布局的自动关联
4. @uni-helper/vite-plugin-uni-platform:平台检测与优化
  • 平台感知:自动检测目标运行平台
  • 编译优化:提供平台特定的构建优化策略
  • 协同工作 :需要与 uni-pages 插件配合使用,实现最佳效果
5. @dcloudio/vite-plugin-uni:核心构建插件

作为 UniApp 的官方核心构建插件,需要注意:

  • 引入顺序:必须在所有 UniHelper 系列插件之后引入
  • 代码混淆:提供强大的代码混淆能力
  • 配置方式 :通过 vite.config.js 中的 terserOptions 自定义 Terser 混淆配置

配置示例

javascript 复制代码
// vite.config.js
export default {
  plugins: [
    // UniHelper 插件系列
    uniManifest(),
    UniPages({
        exclude: ['**/components/**/**.*'],
        routeBlockLang: 'json5', // 虽然设了默认值,但是vue文件还是要加上 lang="json5", 这样才能很好地格式化
        // homePage 通过 vue 文件的 route-block 的type="home"来设定
        // pages 目录为 src/pages,分包目录不能配置在pages目录下
        subPackages: [
          'src/pages-home',
          'src/pages-message',
          'src/pages-user',
          'src/pages-work',
          'src/pages-sub',
        ], // 是个数组,可以配置多个,但是不能为pages里面的目录
        dts: 'src/types/uni-pages.d.ts',
      }),
    uniLayouts(),
    uniPlatform(),
    
    // 官方核心插件(必须最后引入)
    uni()
  ],
  build: {
    terserOptions: {
      // 自定义混淆配置
      compress: {
        drop_console: true
      }
    }
  }
}

这套插件组合为 UniApp 开发提供了从配置管理、路由生成、布局系统到平台优化的完整解决方案,显著提升了开发效率和代码质量。

相关推荐
SuperEugene11 分钟前
Axios + Vue 错误处理规范:中后台项目实战,统一捕获系统 / 业务 / 接口异常|API 与异步请求规范篇
前端·javascript·vue.js·前端框架·axios
行走的陀螺仪12 分钟前
手写 Vue3 极简 i18n
前端·javascript·vue.js·国际化·i18n
羽沢3120 分钟前
一篇简单的STOMP教程QAQ
前端·javascript·stomp
code_Bo21 分钟前
使用AI完成Swagger接口类型在前端自动生成的工具
前端·后端·架构
加个鸡腿儿44 分钟前
从"包裹器"到"确认按钮"——一个组件的三次重构
前端·vue.js·设计模式
子兮曰1 小时前
AI写代码坑了90%程序员!这5个致命bug,上线就炸(附避坑清单)
前端·javascript·后端
猪八宅百炼成仙1 小时前
PanelSplitter 组件:前端左右布局宽度调整的实用解决方案
前端
BUG胡汉三1 小时前
自建在线文档编辑服务:基于 Collabora CODE + Spring Boot + Vue 3 的完整实现
vue.js·spring boot·后端·在线编辑
锋利的绵羊1 小时前
【解决方案】微信浏览器跳出到浏览器打开、跳转到app,安卓&ios
前端
终端鹿1 小时前
Vue3 核心 API 补充解析:toRef / toRefs / unref / isRef
前端·javascript·vue.js