Loading

uni-app是什么

uni-app 是由 DCloud(数字天堂) 开发的一套 基于 Vue.js 的跨平台前端框架,支持一套代码编译到多个平台,包括:
  • 移动端 App(iOS、Android)
  • Web 端(H5)
  • 各类小程序(微信、支付宝、百度、抖音、QQ、钉钉、淘宝、京东、飞书、小红书等)
  • 快应用(华为、OPPO、vivo 等)
  • 鸿蒙应用(HarmonyOS Next)

🧩 核心特性详解

特性类别 说明
跨平台能力 一套代码可发布到 十几种平台,大幅减少开发成本。
技术栈统一 基于 Vue.js,支持 Vue2 和 Vue3,兼容微信小程序 API,学习成本低。
性能优化 小程序端性能优于原生开发,App端支持 WebView 和原生渲染(nvue/weex)。
原生能力支持 支持原生代码混写、原生 SDK 集成、条件编译调用平台特有 API。
开发工具 推荐使用 HBuilderX(官方 IDE),也支持 VS Code + CLI 模式。
插件生态 数千款插件可用,涵盖 UI 组件、支付、地图、图表、富文本等。
状态管理 支持 Vuex、Pinia,适用于复杂项目。
网络请求 内置 uni.request,可封装为 Axios 风格。
云开发支持 提供 uniCloud(基于云函数的无服务器开发方案)。

🧪 条件编译机制

uni-app 提供 条件编译语法,可在同一代码库中优雅处理平台差异:
// #ifdef H5
console.log("这段代码只在 H5 中编译");
// #endif

// #ifdef APP-PLUS
plus.device.getInfo(); // 只在 App 中调用原生 API
// #endif
 
条件编译不会将不适用的代码打包进目标平台,避免体积膨胀和性能损耗。

🏗️ 项目结构示例

├── pages/               // 页面目录
├── static/              // 静态资源
├── components/          // 公共组件
├── store/               // Vuex 或 Pinia
├── utils/               // 工具函数
├── manifest.json        // 平台配置
├── pages.json           // 路由+页面配置
├── uni.scss             // 全局样式
└── App.vue              // 应用入口
 

📱 成功案例(部分)

  • 华为、阿里、腾讯、抖音、美团、京东、快手、vivo 等头部企业都在使用。
  • 案例类型包括:电商、金融、政务、教育、医疗、外卖、社交、IoT 等。

💡 是否值得使用?

使用场景 是否推荐 理由
只做微信小程序 ✅ 强烈推荐 性能优于原生,开发效率高,未来可扩展多端。
只做 App ✅ 推荐 支持原生能力,性能接近原生,开发效率高。
多端统一需求 ✅ 首选 一套代码覆盖 App + H5 + 小程序,极大节省人力。
纯 Web 项目 ⚠️ 可选 虽支持 H5,但若只做 PC 端,Vue3 + Vite 更轻量。

🔗 官方资源

 
posted @ 2025-07-18 22:11  Carver大脸猫  阅读(119)  评论(0)    收藏  举报