uni-app开发微信小程序全流程指南

uniapp 之 开发微信小程序入门详细指南 1、HbuilderX打包需要邀请项目成员,是该项目下的成员方可打包发布;2、开发阶段,不涉及接口可以使用自己申请的临时测试号进行开发;3、开发阶段,调接口的话需要使用一致的正式申请的AppID,且开发人员(这里实质是登录微信开发者的微信号)是该小程序下的开发者角色。完结。 阅读详情
AI摘要

本文围绕uni-app开发微信小程序展开,系统解析运行、发布、发行全流程。介绍了三者概念、操作方法、流程及注意事项,通过实战案例演示开发上线过程,还总结常见问题解决方案与最佳实践,助开发者厘清思路,高效完成小程序开发上线。

目录

第一章 前言

第二章 核心概念解析:运行、发布、发行

2.1 运行(Run)

2.2 发布(Build)

2.3 发行(Release / 上传上线)

2.4 三者的对比总结

第三章 uni-app 项目运行(Run)的详细使用方法

3.1 创建并初始化项目

3.2 运行到浏览器(H5 端)

3.3 运行到微信开发者工具(小程序模拟器)

3.4 真机运行(扫码调试)

3.5 常见运行问题

第四章 uni-app 发布(Build)的流程与细节

4.1 配置 manifest.json

4.2 执行发布操作

4.3 导入到微信开发者工具

4.4 调试与测试

4.5 常见发布问题

第五章 uni-app 项目发行(Release)上线流程

5.1 上传代码

5.2 提交审核

5.3 审核结果

5.4 上线后的版本管理

5.5 灰度发布与流量控制

5.6 常见发行问题

第六章 运行、发布、发行的关键区别再总结

6.1 阶段差异

6.2 工具差异

6.3 面向对象差异

6.4 产物差异

6.5 类比总结

6.6 总结表格

第七章 实战案例:从 0 到 1 完成一个小程序

7.1 项目需求分析

7.2 项目初始化

7.3 开发首页(商品列表)

7.4 商品详情页

7.5 购物车页

7.6 运行阶段

7.7 发布阶段

7.8 发行上线

第八章 常见问题与解决方案

8.1 运行阶段问题

8.2 发布阶段问题

8.3 发行阶段问题

第九章 最佳实践与经验总结

9.1 代码结构与模块划分

9.2 开发阶段的运行技巧

9.3 发布阶段的最佳实践

9.4 发行阶段的最佳实践

9.5 团队协作与版本控制

9.6 总结:运行、发布、发行的黄金法则

第十章 结语

第一章 前言

也是有给微信小程序打交道好久了,终于是完结这一篇博文。小程序这个功能 已经成为了应用分发的重要形态,微信小程序,支付宝小程序,百度小程序,抖音小程序等。尤其是 微信小程序,凭借着微信庞大的用户数量、以及轻量级的使用体验以及无需下载即可使用的优势,已经成为了许多企业和个人开发者的首选平台。同时,跨平台开发框架的兴起,也让开发者不再需要为单一平台重复开发!

uni-app 基于 Vue.js,能够做到“一套代码,多端运行”,支持发布到 H5、iOS、Android 以及各大主流小程序平台(微信、支付宝、抖音、快手等)。在实际需求中,开发者往往会优先选择 微信小程序 作为第一个目标平台,这个是显而易见的, 因为它的市场体量&用户基数最大

but,很多初学 uni-app 的同学在开发小程序时,往往会混淆几个概念:

  • 运行(Run)

  • 发布(Build)

  • 发行(Release)

这三个环节虽然都出现在开发工具(如 HBuilderX、微信开发者工具)中,但它们所处的阶段、目的和作用完全不同。

  • 有些同学在项目还没开发完成时就盲目去“发布”,结果遇到大量报错。

  • 也有人在“运行”阶段误以为已经上线,却发现用户根本无法访问。

  • 还有人因为“发行”流程理解不到位,导致多次被微信官方审核驳回。

so,本文将系统地从概念、使用方法、流程、注意事项到实战案例,完整解析 uni-app 在开发微信小程序时的 运行 → 发布 → 发行 全流程,帮助开发者厘清思路,避免走弯路。

阅读完本文,你将能够清晰回答以下问题:

  1. 运行、发布、发行分别在什么阶段使用?

  2. 它们之间的区别和联系是什么?

  3. 在实际项目中,应该如何正确使用这三种操作?

  4. 开发、调试、上线各阶段会遇到哪些常见问题,又该如何解决?


第二章 核心概念解析:运行、发布、发行

在正式进入操作流程之前,我们必须先彻底理解“运行、发布、发行”三个环节的差异。很多新手开发者遇到的坑,往往都是因为 概念不清 导致的。下面我们逐一拆解。


2.1 运行(Run)

定义:
运行指的是在开发阶段,把你的 uni-app 代码实时编译并运行在某个平台的模拟器或真机上,以便于进行调试和预览。

特点:

  • 不会生成最终可交付的产物。

  • 编译速度快,适合频繁调试。

  • 支持 H5 运行、微信开发者工具模拟运行、真机扫码预览。

  • 仅供开发者自己测试使用,不会对最终用户开放。

使用场景:

  • 新建页面后,快速查看布局效果是否正确。

  • 调试 API 调用,例如 uni.request 请求接口是否正常。

  • 校验交互逻辑是否符合预期。

类比:
运行就好比写文档时的“预览模式”,你在写一篇文章,可以随时点击预览按钮看看排版效果,但这并不是最终印刷的书籍。


2.2 发布(Build)

定义:
发布指的是将 uni-app 源代码编译、打包成 目标平台的小程序代码包,例如微信小程序代码结构(app.json、pages/、utils/ 等)。

特点:

  • 会生成可导入微信开发者工具的产物目录,通常在 dist/build/mp-weixin 下。

  • 一旦发布完成,你就可以使用微信开发者工具来进一步调试。

  • 发布阶段的产物,已经基本符合微信小程序的运行环境要求。

使用场景:

  • 当项目开发到一定程度,需要在微信小程序的真实环境里调试。

  • 在发布前进行打包,保证目录和配置符合小程序规范。

类比:
发布就像把 Word 文档导出为 PDF 文件。此时它已经是可以交付的格式,但还没有真正交到出版社印刷。


2.3 发行(Release / 上传上线)

定义:
发行是指将发布生成的微信小程序代码,通过微信开发者工具上传到 微信公众平台后台,并提交审核,审核通过后才可以对用户开放使用。

特点:

  • 是真正意义上的上线过程。

  • 包括上传代码、填写版本号与描述、提交审核、发布上线。

  • 一旦审核通过并发布,用户就可以在微信内搜索或扫码访问你的程序。

使用场景:

  • 项目开发完成,准备正式上线给用户使用。

  • 需要提交新功能版本,更新已上线的小程序。

类比:
发行就像把 PDF 文件交给出版社印刷、上架,用户才能真正买到并阅读。


2.4 三者的对比总结

对比项运行(Run)发布(Build)发行(Release)
所处阶段开发调试开发完成后,生成代码包最终上线
面向对象开发者自己微信开发者工具终端用户
产物临时编译结果微信小程序代码目录上线小程序
工具依赖HBuilderX / 模拟器HBuilderX + 微信开发者工具微信开发者工具 + 微信公众平台
是否用户可见❌❌✅
常见问题依赖未配置、接口调试失败路径错误、包体积超限审核驳回、版本发布延迟

第三章 uni-app 项目运行(Run)的详细使用方法

前面我们已经明确了“运行”的概念:运行 = 开发阶段的实时预览与调试。这一阶段主要帮助开发者快速查看页面布局、调试接口逻辑、发现 bug。下面我们从实操角度详细解析。


3.1 创建并初始化项目

在 HBuilderX 中创建一个 uni-app 项目:

  1. 打开 HBuilderX → 菜单栏选择 文件 → 新建 → 项目。

  2. 选择 uni-app 模板(官方自带 Hello uni-app 示例项目,适合新手练习)。

  3. 填写项目名称、存放路径。

  4. 点击“创建”,生成项目结构。

默认项目目录结构:

├── pages/                 # 页面存放目录
│   ├── index/index.vue    # 首页
│   └── about/about.vue    # 示例页面
├── static/                # 静态资源目录
├── manifest.json          # 应用配置文件
├── pages.json             # 页面路由配置
├── uni.scss               # 公共样式文件
└── main.js                # 入口文件

关键点:

  • pages.json 控制页面路由和导航栏。

  • manifest.json 控制平台差异化配置(如微信小程序 AppID)。

  • 每个页面是一个 .vue 文件,符合 Vue 单文件组件规范。


3.2 运行到浏览器(H5 端)

操作路径:运行 → 运行到浏览器 → Chrome。

特点:

  • 可以直接在浏览器中查看页面效果。

  • 支持浏览器开发者工具调试(F12)。

  • 适合调试基础页面逻辑、样式布局。

注意:

  • H5 端和小程序端的 API 有一定差异,比如 window、document 只在 H5 有效。

  • 跨域问题(CORS)在 H5 调试时会出现,但在小程序运行时不会。


3.3 运行到微信开发者工具(小程序模拟器)

操作路径:运行 → 运行到小程序模拟器 → 微信开发者工具。

前提:

  • 必须安装微信开发者工具,并在 HBuilderX 中配置路径。

  • 需要在 manifest.json → 小程序配置 中填写 AppID(测试阶段可用体验 AppID)。

效果:

  • HBuilderX 会自动编译生成 /unpackage/dist/dev/mp-weixin 目录。

  • 打开微信开发者工具后,能直接看到小程序的模拟效果。

  • 可以真机扫码预览,更接近最终体验。


3.4 真机运行(扫码调试)

在微信开发者工具中,点击 预览 按钮,会生成二维码。

  • 使用微信扫码,即可在真机上运行当前项目。

  • 适合验证机型兼容性(如 iOS 和 Android 的表现差异)。


3.5 常见运行问题

  1. 运行时报错:未找到微信开发者工具

    • 检查 HBuilderX 中的配置路径:工具 → 设置 → 小程序路径配置。

  2. 接口调试失败

    • 微信小程序端必须在“微信公众平台 → 开发 → 开发管理 → 开发设置”里配置“合法域名”。

  3. 运行结果和实际发布效果不一致

    • H5 模拟和小程序端有差异,必须在“运行到小程序模拟器”里测试才准确。


✅ 小结:
运行阶段的核心目标是 快速调试,不要误以为“运行成功 = 上线成功”。它更像是开发过程中的即时反馈工具。


第四章 uni-app 发布(Build)的流程与细节

当开发工作基本完成,或需要在小程序环境下做更真实的调试时,就需要进入“发布”阶段。发布 = 编译源码 → 生成目标平台产物。


4.1 配置 manifest.json

manifest.json 是发布前必须配置的文件,里面决定了生成小程序的核心信息。

重点配置项:

  1. 应用标识

    • AppID(微信小程序必须填写真实 AppID,否则无法上传发行)。

  2. 应用图标

    • 用于小程序图标显示(建议 1024x1024 尺寸)。

  3. 权限配置

    • 是否使用定位、摄像头、相册等权限。

  4. 分包加载

    • 大型项目必须用分包(微信要求主包 ≤ 2MB,分包 ≤ 20MB)。


4.2 执行发布操作

操作路径:发行 → 小程序微信(微信开发者工具)。

效果:

  • HBuilderX 会进行编译,生成小程序项目目录。

  • 默认存放位置:/unpackage/dist/build/mp-weixin。

生成后的目录结构类似:

dist/build/mp-weixin/
├── app.json
├── pages/
├── static/
├── utils/
└── project.config.json

这些就是符合微信小程序规范的代码文件,可以直接导入微信开发者工具。


4.3 导入到微信开发者工具

  1. 打开微信开发者工具 → 点击“导入项目”。

  2. 选择路径:dist/build/mp-weixin。

  3. 填写 AppID。

  4. 导入后即可看到小程序效果。

关键点:

  • 导入时必须使用和 manifest.json 中一致的 AppID,否则上传时会报错。

  • 如果只是测试,可以使用“无 AppID”模式,但不能发行。


4.4 调试与测试

在微信开发者工具中,可以进行以下操作:

  • 模拟器运行 → 检查 UI 是否正常。

  • 预览 → 真机扫码查看效果。

  • 调试面板 → 打印日志、查看网络请求。


4.5 常见发布问题

  1. 路径错误

    • 常见原因是图片或静态资源路径写错(建议统一用相对路径 @/static/xxx)。

  2. 包体积超标

    • 主包最大 2MB,分包最大 20MB。

    • 解决方法:合理拆分分包,大文件放到云存储。

  3. 依赖插件未配置

    • 如果使用了第三方小程序插件,需要在 manifest.json → 小程序配置 → 插件 中声明。

  4. 兼容性问题

    • 不同平台 API 存在差异,比如 navigator 在 H5 可用,在小程序端不可用,需要用 uni 统一 API。

第五章 uni-app 项目发行(Release)上线流程

经过“运行 → 发布”阶段,我们的项目已经完成了本地调试和产物生成。接下来,最重要的就是把项目发行上线,让真实用户能够在微信里使用。发行 = 上传代码 + 提交审核 + 发布上线。


5.1 上传代码

上传代码的工具是 微信开发者工具,而不是 HBuilderX。
操作步骤:

  1. 打开微信开发者工具,导入我们在 dist/build/mp-weixin 下生成的小程序代码。

  2. 在工具界面右上角,点击 上传 按钮。

  3. 填写以下信息:

    • AppID:必须和微信公众平台注册的小程序一致。

    • 版本号:例如 1.0.0。

    • 版本描述:简要说明更新内容,如“首个上线版本”或“优化商品详情页”。

  4. 点击确认上传,等待完成。

上传后,代码会存放到 微信公众平台后台 → 版本管理 → 开发版本。


5.2 提交审核

上传成功后,还需要提交审核,审核通过后才能发布上线。

操作步骤:

  1. 登录 微信公众平台。

  2. 进入 开发管理 → 开发版本,找到刚上传的版本。

  3. 点击 提交审核。

  4. 填写以下信息:

    • 小程序类目:必须与小程序功能一致(比如“电商平台”不能填“资讯类”)。

    • 标签与简介:用于审核和用户搜索展示。

    • 体验者信息:可添加测试人员,便于上线前体验。

  5. 如果涉及特殊类目(医疗、教育、金融),需要上传相应的资质证书。


5.3 审核结果

  • 审核通过

    • 版本会进入“审核通过”状态。

    • 点击 发布,即可将该版本上线,用户通过微信搜索或扫码就能使用。

  • 审核不通过

    • 微信审核团队会给出驳回理由。

    • 常见驳回原因:

      1. 功能与申报类目不一致。

      2. 涉及违规内容(敏感词、侵权资源)。

      3. 没有提供必需的资质。

    • 修改代码或资料后,重新上传并提交审核即可。


5.4 上线后的版本管理

微信公众平台提供了多版本管理功能:

  1. 开发版本

    • 仅开发者和体验者可见。

  2. 体验版

    • 可供内测团队使用,但普通用户无法访问。

  3. 审核版

    • 提交审核后生成,等待微信官方审核。

  4. 线上版

    • 审核通过并发布的版本,面向所有用户。


5.5 灰度发布与流量控制

微信支持 灰度发布,也就是逐步放量上线:

  • 可以设置部分用户先体验新版本。

  • 如果发现 bug,可以快速回退到旧版本。

  • 避免新版本 bug 全量影响所有用户。


5.6 常见发行问题

  1. 无法上传代码

    • 检查 AppID 是否与公众平台一致。

    • 检查 manifest.json 是否填写正确。

  2. 审核反复驳回

    • 检查类目选择是否符合小程序内容。

    • 确保 UI 规范,不要含有广告违规元素。

  3. 包体积超限

    • 主包不能超过 2MB。

    • 解决方法:拆分分包、使用云开发托管资源。

  4. 用户访问报错

    • 检查微信后台“开发设置 → 合法域名”是否配置正确。


✅ 小结:
发行是 最后一步,它决定了用户能否真正使用你的项目。流程一般是:

上传代码 → 提交审核 → 审核通过 → 发布上线 → 用户可见


第六章 运行、发布、发行的关键区别再总结

到这里,我们已经完整走完了 运行 → 发布 → 发行 的三大环节。为了防止开发者混淆,我们再做一次整体梳理。


6.1 阶段差异

  • 运行(Run):开发阶段,主要是调试和预览。

  • 发布(Build):开发完成后,生成小程序代码包。

  • 发行(Release):将代码上传审核,正式上线用户可见。


6.2 工具差异

  • 运行:HBuilderX + 微信开发者工具(调试用)。

  • 发布:HBuilderX(编译打包)。

  • 发行:微信开发者工具 + 微信公众平台。


6.3 面向对象差异

  • 运行:开发者。

  • 发布:测试团队(在小程序环境下调试)。

  • 发行:终端用户。


6.4 产物差异

  • 运行:临时调试结果。

  • 发布:小程序代码包(dist/build/mp-weixin)。

  • 发行:审核通过的小程序,用户可访问。


6.5 类比总结

  • 运行 = 预览文档:开发者自己看效果。

  • 发布 = 导出 PDF:生成可交付文件,但还没上架。

  • 发行 = 印刷上架:用户才能真正购买和使用。


6.6 总结表格

对比项运行(Run)发布(Build)发行(Release)
阶段开发调试编译生成产物上线交付
面向对象开发者测试人员最终用户
工具HBuilderX / 模拟器HBuilderX + 微信开发者工具微信开发者工具 + 微信公众平台
产物临时结果小程序目录审核上线小程序
是否用户可见❌❌✅

第七章 实战案例:从 0 到 1 完成一个小程序

光讲概念和流程还不够,我们来做一个实战案例,把 运行 → 发布 → 发行 三个阶段完整串起来。假设我们要开发一个 商品展示小程序,功能包括:

  • 首页展示商品列表

  • 商品详情页

  • 购物车功能(本地存储)

  • 联系客服按钮


7.1 项目需求分析

目标:

  • 面向零售商,帮助他们快速上线一个小程序店铺。

  • 功能尽量简单,突出商品展示。

用户流程:

  • 打开小程序 → 首页看到商品列表 → 点击进入详情 → 加入购物车 → 查看购物车 → 联系客服购买。


7.2 项目初始化

  1. 打开 HBuilderX → 新建项目 → 选择 uni-app 模板。

  2. 目录结构生成后,修改 pages.json,定义页面路由:

{
  "pages": [
    {
      "path": "pages/index/index",
      "style": {
        "navigationBarTitleText": "首页"
      }
    },
    {
      "path": "pages/detail/detail",
      "style": {
        "navigationBarTitleText": "商品详情"
      }
    },
    {
      "path": "pages/cart/cart",
      "style": {
        "navigationBarTitleText": "购物车"
      }
    }
  ]
}


7.3 开发首页(商品列表)

<template>
  <view class="container">
    <view v-for="item in products" :key="item.id" class="product" @click="goDetail(item.id)">
      <image :src="item.image" class="product-img"></image>
      <text class="product-title">{{ item.name }}</text>
      <text class="product-price">¥{{ item.price }}</text>
    </view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      products: [
        { id: 1, name: 'T恤', price: 99, image: '/static/tshirt.png' },
        { id: 2, name: '牛仔裤', price: 199, image: '/static/jeans.png' }
      ]
    }
  },
  methods: {
    goDetail(id) {
      uni.navigateTo({
        url: `/pages/detail/detail?id=${id}`
      })
    }
  }
}
</script>


7.4 商品详情页

<template>
  <view class="container">
    <image :src="product.image" class="detail-img"></image>
    <text class="detail-title">{{ product.name }}</text>
    <text class="detail-price">¥{{ product.price }}</text>
    <button type="primary" @click="addToCart">加入购物车</button>
  </view>
</template>

<script>
export default {
  data() {
    return {
      product: {}
    }
  },
  onLoad(query) {
    const id = query.id
    // 模拟请求
    const products = [
      { id: 1, name: 'T恤', price: 99, image: '/static/tshirt.png' },
      { id: 2, name: '牛仔裤', price: 199, image: '/static/jeans.png' }
    ]
    this.product = products.find(p => p.id == id)
  },
  methods: {
    addToCart() {
      let cart = uni.getStorageSync('cart') || []
      cart.push(this.product)
      uni.setStorageSync('cart', cart)
      uni.showToast({ title: '已加入购物车', icon: 'success' })
    }
  }
}
</script>


7.5 购物车页

<template>
  <view class="container">
    <view v-for="item in cart" :key="item.id" class="cart-item">
      <text>{{ item.name }} - ¥{{ item.price }}</text>
    </view>
    <button type="default" open-type="contact">联系客服</button>
  </view>
</template>

<script>
export default {
  data() {
    return {
      cart: []
    }
  },
  onShow() {
    this.cart = uni.getStorageSync('cart') || []
  }
}
</script>


7.6 运行阶段

  1. 在 HBuilderX 中选择 运行 → 运行到小程序模拟器 → 微信开发者工具。

  2. 调试首页、详情页、购物车逻辑是否正常。

  3. 使用真机扫码体验购物车功能。


7.7 发布阶段

  1. 打开 HBuilderX → 菜单栏 发行 → 小程序微信(微信开发者工具)。

  2. 生成目录 dist/build/mp-weixin。

  3. 打开微信开发者工具 → 导入目录 → 填写 AppID。

  4. 检查 UI、接口、逻辑是否与需求一致。


7.8 发行上线

  1. 在微信开发者工具点击 上传,填写版本号 1.0.0 和描述“首个上线版本”。

  2. 登录微信公众平台 → 提交审核。

  3. 审核通过后点击发布 → 用户可搜索访问小程序。


✅ 小结:
通过本案例,我们完整演示了从 开发 → 运行调试 → 发布编译 → 发行上线 的全过程。实际项目中会更复杂,但思路相同。


第八章 常见问题与解决方案

在实际开发和上线过程中,开发者经常会遇到各种问题。下面我们按照阶段来总结常见坑点和解决方案。


8.1 运行阶段问题

问题 1:运行时报错“未找到微信开发者工具路径”

  • 解决:在 HBuilderX → 工具 → 设置 → 小程序路径配置,正确填写微信开发者工具安装路径。

问题 2:接口请求失败

  • 原因:微信小程序必须在“开发设置 → 服务器域名”里配置合法域名。

  • 解决:确保后台 API 域名已添加,并启用 HTTPS。

问题 3:H5 模拟和小程序端效果不一致

  • 原因:小程序不支持 window、document 等 Web API。

  • 解决:统一使用 uni.* API,避免直接使用浏览器对象。


8.2 发布阶段问题

问题 1:资源路径错误

  • 解决:统一使用 @/static/xxx.png 或相对路径,避免绝对路径。

问题 2:主包体积超限

  • 微信要求主包 ≤ 2MB。

  • 解决:启用分包加载,把非首页页面拆分到子包里。

问题 3:插件调用失败

  • 解决:在 manifest.json → 小程序配置 → 插件 中声明插件 AppID 和版本号。


8.3 发行阶段问题

问题 1:上传时报错“AppID 不一致”

  • 解决:检查 manifest.json 和导入微信开发者工具时填写的 AppID 是否一致。

问题 2:审核被拒

  • 常见原因:

    1. 类目不符(比如“游戏类”代码放在“工具类”类目下)。

    2. 页面含有广告、虚假描述。

    3. 涉及医疗、教育、金融却未提供资质。

  • 解决:根据驳回原因修改代码/资料,重新提交审核。

问题 3:用户访问报错“域名未备案”

  • 原因:小程序接口域名必须备案并启用 HTTPS。

  • 解决:检查域名备案状态,启用 SSL 证书。

问题 4:上线后发现 bug

  • 解决:微信支持 回退版本 或 灰度发布,可快速修复问题。

常见问题集中在三个方面:

  • 运行阶段 → 环境配置问题。

  • 发布阶段 → 资源路径、包体积问题。

  • 发行阶段 → 审核规范、域名备案问题。

只要把这三类问题提前规避,上线流程就会顺畅很多。

第九章 最佳实践与经验总结

经过前面章节的详细解析与案例演示,相信大家对 uni-app 在微信小程序上的运行、发布与发行全流程 已经有了较为清晰的理解。
然而,真正的开发往往比文档复杂得多,以下是结合社区经验、企业项目实践总结出的最佳实践,帮助你少踩坑、提升效率。


9.1 代码结构与模块划分

  • 保持清晰的目录结构

    • 建议按照业务模块划分 pages/ 子目录,例如:

      pages/
        ├─ home/       首页
        ├─ user/       用户相关
        ├─ order/      订单相关
        └─ settings/   设置
      
    • 避免所有页面堆在 pages/ 根目录,后期难以维护。

  • 公共组件独立化

    • 可复用的 UI 或逻辑(如底部导航栏、表单组件、上传组件)放在 components/ 目录下。

    • 这样发布或运行时,任何改动只需维护一份代码。


9.2 开发阶段的运行技巧

  • 推荐使用微信开发者工具真机预览

    • HBuilderX 的运行仅用于快速验证,最终还是要在微信小程序环境中测试。

    • 尤其是支付、地图、蓝牙、订阅消息等 API,必须在真机上才能体验完整效果。

  • 开启自动编译

    • 在 HBuilderX 勾选「保存文件自动编译」,可以减少手动点击运行的时间。

    • 对于大型项目,建议配合「仅编译修改文件」提升效率。

  • mock 数据调试

    • 在开发早期,后端接口可能尚未完成。

    • 建议使用 mock/ 文件夹存放模拟数据,避免因接口缺失而影响运行。


9.3 发布阶段的最佳实践

  • 严格控制代码包体积

    • 微信小程序 主包 ≤ 2MB,整体 ≤ 20MB。

    • 对大体积资源(图片、视频)应上传到 CDN 或云存储,运行时动态加载。

  • 使用分包加载

    • 对于功能复杂的小程序,合理划分业务模块为多个分包,可以减少首屏加载时间。

    • 示例:

      subPackages: [
        {
          root: "pages/order/",
          pages: ["list", "detail"]
        }
      ]
      
  • 版本号管理

    • 发布时建议使用语义化版本号(如 1.2.0)。

    • 每次打包记录版本与 Git 提交号,方便问题追溯。


9.4 发行阶段的最佳实践

  • 上传前彻底自测

    • 微信审核通常只允许提交 2~3 次,频繁驳回会延误上线进度。

    • 因此建议内部先完成功能覆盖测试,避免低级 bug。

  • 审核描述要清晰

    • 审核提交时的「版本说明」要写明新增功能点、涉及的页面。

    • 如果涉及支付、用户数据收集,要确保有相关资质。

  • 灰度发布

    • 对于大型项目,可以使用微信公众平台的「灰度发布」功能,先让一部分用户体验,逐步放量,降低风险。


9.5 团队协作与版本控制

  • Git 分支管理

    • 开发分支(develop)、测试分支(test)、主分支(master)清晰区分。

    • 发布版本前应打 tag(如 v1.0.0)。

  • 持续集成(CI/CD)

    • 可使用 uni-app CLI + GitHub Actions / Jenkins,实现自动化构建。

    • 一旦代码合并到主分支,就自动触发打包并上传到微信小程序。


9.6 总结:运行、发布、发行的黄金法则

  1. 运行要快:保持高效调试,减少等待时间。

  2. 发布要稳:代码结构清晰,控制包体积。

  3. 发行要慎:测试全面、审核材料准备充分。

掌握以上三点,你的微信小程序开发效率将显著提升,踩坑概率也会大幅下降。


第十章 完结撒花 ✿✿ヽ(°▽°)

uni-app 作为一款成熟的跨平台开发框架,极大地简化了多端应用开发的成本。
而在微信小程序这一主流平台上,开发者如果想要高效开发、顺利上线,就必须理解并掌握 运行 → 发布 → 发行 的完整流程。

回顾全文,也是依次解析了:

  • 运行:开发调试的过程,快速验证功能。

  • 发布:生成符合微信小程序规范的代码包。

  • 发行:上传审核并正式上线用户可用。

同时,我们通过实战案例,从 0 到 1 走完了完整的小程序开发上线流程;又结合经验总结,给出了最佳实践和常见问题解决方案。

最终想强调的一点是:

技术只是手段,产品才是目标。
运行、发布、发行是工具链中的步骤,真正决定小程序价值的,仍然是它能否解决用户痛点、提升用户体验。

希望本文能帮助你少踩坑,更高效地完成小程序开发与上线。如果你正准备开启一个微信小程序项目,或许现在就可以打开 HBuilderX,写下第一行代码

祝各位开发顺利,代码一路绿灯无红灯,小程序早日上线! 🚀

uniapp写微信小程序 新建uniapp项目 --- 运行默认项目到微信小程序 --- 创建tabbar页面 --- 配置tabbar --- 写每一个页面的结构,样式和数据请求,渲染展示 --- 组件的创建和使用 --- 页面间的传值 --- uniapp插件(外部组件)的使用 --- 真机预览效果 --- 项目打包上传。在uniapp的插件市场找到你需要的插件,然后点击使用HX导入即可,然后使用方法和你自己写的组件一样,无需导入注册,直接看着插件的介绍使用即可。 阅读详情

相关推荐

uniapp开发微信小程序

pages.json配置easycom “custom”// 以 Xxx 开头的组件,在 components 文件夹中查找引入(需要重启服务器) "^Xxx(.*)" : "@/components/Xtx$1.vue"配置类型声明,创建components.d.ts(统一放到types文件夹下)// 组件实例类型。

weixin_43952341的博客 2646

uniapp从入门到精通(全网保姆式教程)~ 别再说你不会开发小程序了

为了实现多端兼容,综合考虑编译速度、运行性能等因素,uni-app约定了如下开发规范:页面文件遵循Vue单文件组件规范组件标签靠近小程序规范,详细见uni-app组件规范接口能力(js api)靠近微信小程序规范,但需将前缀wx替换为uni,详见uni-app接口规范数据绑定及事件处理同Vue.js规范,同时补充了App以及页面的生命周期为兼容多端运行,建议使用flex布局进行开发。

路漫漫其修远兮,吾将上下而求索 12万+

从零到一:uni-app 微信小程序全流程开发与发布指南

通过以上步骤,你已经了解了如何从零开始创建并发布一个 uni-app 微信小程序。虽然过程可能会有些复杂,但随着实践的深入,你会越来越熟悉。小程序的开发是一个不断学习和探索的过程,希望本文能为你的小程序开发之旅提供帮助。

weixin_45621415的博客 2772

uni-app开发小程序

地址uni-app官方推荐使用HBuilderX来开发uni-app类型的项目,主要好处:模板丰富、完善的智能提示、一键运行分包指的是把一个完整的小程序项目,按照需求划分为不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载在项目根目录的 components 目录上,鼠标右键,选择 新建组件,填写组件信息,最后点击 创建 按钮。

a2739294436的博客 1万+

UniGUI与uni-app区别:微信小程序开发全流程详解与避坑指南

在跨端开发与微信小程序生态中,框架选型是决定项目成败的第一步。很多开发者搜索“UniGUI开发微信小程序”,却误将Delphi下的Web框架UniGUI与DCloud推出的uni-app混为一谈。理解Vue语法编译到多端小程序的原生机制,以及服务端渲染与小程序沙箱运行的本质差异,是技术路径选择的基础。uni-app凭借Vue工程化经验、条件编译与HBuilderX一键运行能力,成为连接前端工程师与小程序平台的常用桥樑。本文从环境搭建讲起,涵盖AppID配置、自定义导航栏、富文本、音视频、蓝牙打印、网络异常处

weixin_31960565的博客 202

HBuilderX + Uni-app实战:从零开发一个微信小程序并发布上线(含云打包配置)

本文详细介绍了如何使用HBuilderX和Uni-app框架从零开发并发布微信小程序的全流程。内容包括环境配置、页面开发、调试优化、云打包及上线发布等核心环节,特别提供了云打包配置的实用技巧,帮助开发者高效完成小程序开发项目。

635

uniapp 总结篇 (小程序)

做了很长时间的小程序了,在此做一个完整的项目总结,希望可以帮助到正在学习、开发的小伙伴。此篇文章并不涉及一些原理,更重要的是帮助大家实现功能、流程。uniapp还是很强大的可以开发小程序、h5、pc、app。...

^_^ 2万+

基于uni-app的跨端移动应用开发实战:从零构建智慧零工平台前端

跨端开发是当前移动应用开发领域的热门技术方向,它旨在通过一套代码库同时生成多个平台(如微信小程序、H5、App)的应用,从而显著提升开发效率并降低维护成本。其核心原理在于利用统一的JavaScript框架(如Vue.js或React)编写业务逻辑,再通过特定的编译工具或运行时框架,将代码转换为各平台原生或接近原生的组件与API调用。这种技术方案的价值在于,它允许开发者,尤其是资源有限的团队或学生,能够快速构建和验证产品,同时保证多端用户体验的一致性。在众多跨端框架中,uni-app因其基于Vue.js的友好

weixin_34258838的博客 408

BookChatApp二次开发指南:基于uni-app打造个性化阅读应用

BookChatApp是通用书籍阅读APP,BookChat的uni-app实现版本,支持多端分发,编译生成Android和iOS手机APP以及各平台的小程序。本指南将带你快速掌握如何基于uni-app对BookChatApp进行二次开发,打造属于自己的个性化阅读应用。 ## 准备工作:环境搭建与项目获取 要开始BookChatApp的二次开发,首先需要搭建好开发环境并获取项目代码。 ###

gitblog_00854的博客 128

智能驾驶域控(ADCU)方案介绍

本文主要对智能驾驶域控(ADCU)方案相关知识进行总结,以加深理解,及方便后续查漏补缺。

liuxu324的博客 1577

51单片机-点亮LED和蜂鸣器

ULN2003是高耐压、大电流达林顿陈列,由七个硅NPN达林顿管组成。ULN2003是大电流驱动陈列,多用于单片机、只能仪表、PLC、数字量输出卡等控制电路中。可直接驱动蜂鸣器、继电器等负载。void delay(u16 i) // i等于1大约10uswhile(i--);//取反,高低电平不断变化,产生脉冲delay(10);// 周期200us。

三日沐水 1129

uni-app跨端开发实战:从环境搭建到用户登录全流程

多端适配是前端开发绕不开的痛点,一套代码能否同时交付iOS、Android、微信小程序和H5?uni-app凭借Vue语法和编译期多端转换能力,成为高效复用业务逻辑的跨端框架之一。其核心原理是在编译阶段将.vue文件分别翻译成各平台可识别的渲染节点与事件系统,实现一次编写、多端运行。它适合电商、社区、工具类等重业务场景,能显著降低多端维护成本。本文从HBuilderX环境搭建、项目目录结构、rpx适配、组件与生命周期写法讲起,深入解析uni.request封装、token存储与登录态管理,完整演示微信小程序

weixin_33793620的博客 101

锐捷交换机配置SSH

锐捷交换机配置ssh 一、组网需求 通过ssh功能可以远程登录管理设备 二、配置步骤 全局开启ssh服务,并且指定ssh版本 Ruijie>enable Ruijie#configure terminal Ruijie(config)#enable service ssh-server ------>开启SSH服务,默认关闭 Ruijie(config)#ip ssh version 2 ------>默认1.99版本,设置为版本2 添加登

Loners_fan的博客 1万+

uni-app微信小程序开发小白教程(有手就会)

uni-app 就是 用 Vue.js 开发所有前端应用 的框架用vue去写,uni-app会帮我们生成 各个终端适配的一个应用可以实现开发者编写一套代码,就能发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。【即:一次开发 多端覆盖】

x737510的博客 2万+

文献计量VOSviewer分析知网文献基本操作及实用技巧

本教程旨在为读者提供一个关于VOS viewer的初级使用指南。VOS viewer是一个强大的科学研究可视化工具,主要用于构建和可视化科学地图。它能够处理大规模的科研数据,包括文献引用、共引、共词、共作者等信息。无论你是科研人员,还是数据分析师,甚至是研究生,都能在这个教程中找到使用VOS viewer的有效方法。我们将一步步教你如何使用这个软件,以及如何利用它进行科研数据的可视化。

Jia_n的博客 8768

保姆级避坑指南:在Ubuntu 22.04上用ROS2 Humble搞定TurtleBot3的SLAM与导航(附5个常见报错解决方案)

本文提供了一份详细的Ubuntu 22.04上使用ROS2 Humble和TurtleBot3进行SLAM建图与导航的避坑指南,涵盖Gazebo启动失败、场景加载问题、环境变量设置、GLIBCXX版本冲突及Nav2参数配置等5个常见报错的解决方案,帮助开发者高效完成机器人导航项目。

weixin_29062823的博客 286

Uni-app 开发微信小程序

Uni-app 是一个使用 Vue.js 语法的跨平台开发框架,允许开发者用一套代码打包成多种平台的小程序和应用,包括微信、支付宝、钉钉、字节跳动等小程序以及 Web 应用。

vvvae1234的博客 3739

告别手动操作!用Python脚本批量处理Siemens NX零件文件(导入/导出/移除参数)

本文详细介绍了如何利用Python脚本实现Siemens NX零件文件的批量处理,包括导入、导出和移除参数等操作。通过NX Open API和Python UF接口,工业设计师可以大幅提升工作效率,告别繁琐的手动操作。文章提供了完整的实战指南,涵盖环境配置、核心功能实现以及性能优化技巧,特别适合需要进行Siemens-NXUG二次开发的工程师参考。

weixin_28222493的博客 261

使用uni-app开发微信小程序

文章目录1.uni-app框架介绍2.布置开发环境3.理论基础3.1开发规范3.2目录结构3.3组件3.4 常用API4.开发实践4.1页面相关4.1.1页面生命周期4.1.2创建页面4.1.3修改页面样式、功能4.1.4页面跳转4.2组件相关4.2.1组件生命周期4.2.2创建和使用组件4.2.3组件间通信5.小程序发布 1.uni-app框架介绍 uni-app 是一个使用 Vue.js 开发...

qq_34474585的博客 3452

1、初探 Tiny Machine Learning

Tiny Machine Learning(TinyML)是机器学习与嵌入式系统的融合领域,致力于在资源受限的微控制器上运行AI模型。本文介绍了机器学习基础、TinyML的核心概念、应用领域(如智能家居、工业物联网、医疗保健)、面临的挑战(如资源限制、模型压缩、数据质量),以及从硬件准备到模型部署的实践步骤。通过利用训练与推理的资源不对称性,可在PC上训练模型并部署至低功耗设备进行实时推理,推动边缘智能的发展。

loss4bartender的博客 122

15、目标检测模型的评估指标与YOLO算法解析

本文详细解析了目标检测模型的评估指标,包括精确率、召回率、AP、mAP及IoU的定义与作用,并深入介绍了YOLO算法的核心原理与推理流程。从网格划分、锚框引入到边界框细化与后处理,全面阐述了YOLO如何实现快速准确的目标检测。同时总结了YOLO在智能安防、自动驾驶和工业检测等领域的应用,并展望了其未来在准确性提升、多类别支持和技术融合方面的发展趋势。

work3的博客 66

uni-app开发微信小程序

使用uni-app开发微信小程序,可以极大地提高开发效率,降低开发成本。通过统一的开发框架和跨平台的能力,开发者可以更加专注于业务逻辑和用户体验的实现。同时,uni-app还提供了丰富的组件库和API支持,使得开发者可以轻松地构建出功能丰富、性能优良的小程序应用。在开发过程中,需要注意代码优化、资源优化和渲染优化等方面的问题,以确保应用的性能和用户体验。最后,通过真机调试和性能分析等手段来发现并解决潜在的问题,确保应用的稳定性和可靠性。

jun778895的博客 1801

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: Java 面向对象基础(OOP) 的核心概念:类与对象以及构造方法,Java 入门到进阶的关键基础
下一篇: Java 面向对象核心三大特性:封装、继承、多态(OOP),这是 Java 进阶的核心基础
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星空下的DeppBing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值