uni-app 是什么
uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到 iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台。
即使不跨端,uni-app 也是开发微信小程序的常用选择:一套 Vue 语法 + 编译到小程序,比原生小程序开发效率更高。
一、创建项目(推荐 Vue3 + Vite 版)
早期基于 Vue CLI 的创建方式(vue create -p dcloudio/uni-preset-vue)已被官方废弃,现在推荐两种方式:
方式一:HBuilderX 可视化创建
下载 HBuilderX,新建项目 → 选择 uni-app 模板 → 选 Vue3。
方式二:命令行 CLI
1 | npx degit dcloudio/uni-preset-vue#vite myapp |
二、配置 AppID
在 manifest.json 中填入微信小程序 AppID:
1 | { |
AppID 在微信公众平台注册小程序后获取(个人主体也能注册)。没有 AppID 也可以先用测试号跑通:微信开发者工具里选择”测试号”即可。
三、运行到微信小程序
1 | npm run dev:mp-weixin |
执行后生成 dist/dev/mp-weixin 目录,然后用微信开发者工具:
- 打开”导入项目”;
- 目录选择
dist/dev/mp-weixin; - AppID 填自己的(或测试号);
- 即可实时预览调试,代码保存后自动编译刷新。
四、运行到 H5
1 | npm run dev:h5 |
浏览器访问 http://localhost:5173 即可看到页面,适合快速验证 UI 和交互。
五、发布
微信小程序:
1 | npm run build:mp-weixin |
在微信开发者工具中打开 dist/build/mp-weixin,点”上传”,然后在微信公众平台提交审核发布。
H5:
1 | npm run build:h5 |
把 dist/build/h5 目录部署到任意静态服务器(Nginx、OSS 等)即可。
六、开发注意点
- 标签用内置组件:
view、text、image等,跨端场景不要用 HTML 标签; - 单位用 rpx:750rpx = 屏幕宽度,自动适配各端;
- 接口请求:
uni.request封装统一请求层,token 用uni.setStorageSync持久化; - 条件编译:平台差异代码用
#ifdef MP-WEIXIN/#ifdef H5区分; - 合法域名:小程序正式版请求必须配置 request 合法域名(微信公众平台 → 开发设置 → 服务器域名),本地调试可勾选”不校验合法域名”。
七、常见坑
- 运行命令找不到平台:确认
package.json的 scripts 里有dev:mp-weixin,Vue3 + Vite 版默认带; - 微信开发者工具一直编译失败:先确认版本,新版工具要求 Node 18+;
- 请求 404/报域名错误:多为合法域名未配置或没开调试模式;
- 样式不一致:H5 和微信小程序对 CSS 支持有差异,用条件编译处理。
总结
uni-app 的上手路径:创建项目 → 配 AppID → dev:mp-weixin 联调 → build 发布。核心价值是”一套代码多端发布”,微信小程序 + H5 是最高频的组合。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 JCAlways!
评论
