uniapp和原生小程序运行打包详解

主要介绍了原生微信小程序项目打包发布的流程,以及uniapp项目打包成H5和小程序的步骤,和项目开发的注意点等

1. 原生小程序

1.1 项目结构

微信页面的主要结构是:xx.jsxx.jsonxx.wxmlxx.wxss

具体结构及配置可以查看官网小程序配置-全局配置

1.2 导入项目

需要维护旧项目时,需要导入项目,操作流程如下所示:

项目->导入项目->选择项目文件目录

注意:AppID 要填你自己的,如果没有注册开发者,需要注册;如果不是该项目的开发者,需要管理员在后台把你加入进去

1.3 编译预览项目

前提:已经是该项目的开发者了

编译:点击后,可以在模拟器中查看效果,默认打开第一个页面

预览:可以生成二维码,通过手机微信扫码,查看效果

普通编译:默认时展示app.jsonpages数组的第一个页面

如果只想编译预览某个页面,可以"添加编译模式",自定义编译条件,打开指定页面

1.4 配置详情

可以修改调试基础库版本,针对不同的微信客户端版本去处理。

可以看到各个版本的百分比情况,一般选择百分比高的,比较大众的进行开发。然后其他版本有问题时,进行兼容性处理。

1.5 代码上传

点击"上传",可以提交代码。

默认会展示线上版本,新版本号会在之前基础上加一,你也可以自己调整。

1.6 版本发布

代码上传完成后,就可以登录开发者管理后台,在版本管理中,看到提交的版本了。

"开发版本"中,可以将提交的版本设置为体验版本

提交审核之后,进入"审核版本"

审核通过之后,进入"线上版本",线上版本可以进行"版本回退"

1.7 问题解决

  1. 创建项目时,导航栏不显示

导航栏:框架-小程序配置-全局配置-tabBar

新建的项目,默认渲染模式是 skyline,导致顶部导航栏没有显示。

需要显示顶部导航组件的话,调整 app.json 配置

json 复制代码
{
  // "renderer": "skyline", // 去除
  "window": {
    "navigationStyle": "default" // 设置为default
  }
}
  1. sass支持配置

sass 支持:工具-开发辅助-原生支持 TypeScript

配置 useCompilerPlugins 参数

json 复制代码
// project.config.json
{
  "setting": {
    "useCompilerPlugins": ["sass"]
  }
}

2. uniapp

2.1 项目结构

目录结构如下所示:具体功能和配置可以查看官网全局文件

2.2 导入项目

我一般是从本地目录导入项目

具体操作为:文件->导入->从本地目录导入->选择项目文件夹

2.3 打包成 H5

(1)首先进行 H5 的打包配置,在 manifest.json 中进行配置,HBuilder 打开该文件,会展示可视化界面,方便配置。具体可查看文档manifest.json 应用配置之 H5

(2)开发预览:运行->运行到浏览器->Chrome->到对应地址打开

(3)打包预览:发行->网站-PC Web 或手机 H5(仅适用于 uni-app)

打包后的目录结构如下,打包文件在 unpackage/dist/build/h5 目录下,可以直接本地打开 index.html 文件查看;也可以部署到服务器,进行预览

2.4 打包成小程序

如图所示,按如下操作执行:发行->小程序-微信(仅适用于 uni-app)。

打包后,项目文件在 unpackage/dist/build/mp-weixin 下,用微信小程序打开该目录即可。

注意一:小程序中,进行接口调用时,需要先配置合法域名。配置后,可以在详情->项目配置中查看到

注意二:本地调试时,没有配置合法域名时,可以先不校验:详情->本地配置->不校验合法域名

注意三:appid 不对应,不为对应的开发者时,会报错:

此应用 Dcloud_appid 为 xxx,您不是这个应用的项目成员。1. 联系这个应用的所有者,请求加入项目成员(dev.dcloud.net.cn "成员管理"-"添加项目成员"); 2. 重新在 manifest.json 中生成自己的 APPID;3. 联系应用所有者将此 Dcloud appid 转让给当前账号

相关推荐
dae bal2 小时前
关于RSA和AES加密
前端·vue.js
代码老y5 小时前
十年回望:Vue 与 React 的设计哲学、演进轨迹与生态博弈
前端·vue.js·react.js
前端snow5 小时前
前端无接口实现Table导出Excel的两种方案(附完整代码)
javascript·vue.js·react.js
咸虾米_7 小时前
微信小程序通过uni.chooseLocation打开地图选择位置,相关设置及可能出现的问题
微信小程序·小程序·uniapp开发·小程序地图api
yangholmes88887 小时前
如何为 Vue 组件提供 slots 静态类型检查
vue.js
借月7 小时前
高德地图绘制工具全解析:线路、矩形、圆形、多边形绘制与编辑指南 🗺️✏️
前端·vue.js
梦里寻码7 小时前
自行食用 uniapp 多端 手写签名组件
前端·uni-app
....49210 小时前
Vue3 + Element Plus 实现可搜索、可折叠、可拖拽的部门树组件
前端·javascript·vue.js
bitbitDown11 小时前
重构缓存时踩的坑:注释了三行没用的代码却导致白屏
前端·javascript·vue.js
Solon阿杰11 小时前
前端(react/vue)实现全景图片(360°)查看器
javascript·vue.js