tmerclub-doc/生产环境搭建/mall4cloud-unipp生产环境搭建.md
2025-03-19 15:04:57 +08:00

195 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

mall4cloud-uniapp本项目结合了vue脚手架可在vscoded等主流编辑器输入指令 安装、运行和打包。兼容h5、小程序、app端多端开发
## 安装nodejs
[NodeJS](https://nodejs.org/) 项目要求最低 18.12.0,推荐 20.9.0
如果不了解怎么安装nodejs的可以参考 [菜鸟教程的nodejs相关](https://www.runoob.com/nodejs/nodejs-install-setup.html)
## 安装依赖
项目要求使用 [pnpm](https://www.pnpm.cn/) 包管理工具
使用编辑器打开项目,在根目录执行以下命令安装依赖
```
pnpm install
```
如果不想使用 pnpm请删除 `package.json` 文件中 `pnpm` 相关内容后再进行安装
```json
{
"scripts" : {
"preinstall": "npx only-allow pnpm" // 删除此行
},
"engines": {
"pnpm": ">=7" // 删除此行
},
"pnpm": { // 删除此项
...
}
}
```
## 对不同项目的配置
uniapp项目是兼容多端的所以不同的端要有不同的配置
1. h5会分为两种一种是在微信上打开的h5页面一种是在浏览器打开的h5页面。在微信打开的h5页面是需要公众号服务的其中的微信支付是jsapi支付。在手机浏览器打开的是h5支付属于不同的范畴。
在进行公众号打开页面的时候因为需要进行微信公众号支付还有微信公众号的登陆授权所以需要配置微信公众号的appid
修改`.env.production`
```bash
# 微信公众号appid
VITE_APP_MP_APPID = 'wx42bbe857570c5b40'
```
2. 对于小程序是需要配置小程序的appid
修改`manifest.json` 在非源码视图,选择需要运行的模式,修改里面的参数,如修改`微信小程序配置-微信小程序appid` 从而运行微信小程序。
## 修改配置文件
修改 `.env.production`
* 以下域名,接口为示例,请结合申请的域名,接口进行修改
```bash
# 微信公众号appid
VITE_APP_MP_APPID = 'wx42bbe857570c5b40'
# h5或其它app打开当前App的自定义UrlSchemes还需要在manifest.json -> distribute -> app-plus -> android/schemes 与 ios urltypes 中进行配置 (二者需要一致)
VITE_APP_URL_SCHEMES = 'lanhaicloud'
# 统一接口域名
VITE_APP_BASE_API = 'https://cloud-api.mall4j.com'
# webSocket 域名
VITE_APP_WS_IM_API = 'wss://cloud-api.mall4j.com'
# H5线上域名
VITE_APP_DOMAIN_ADDRESS = 'https://h5.mall4j.com/cloud'
# 访问文件存储资源的url 对应阿里云的Bucket域名
VITE_APP_RESOURCES_URL = 'http://mall4cloud.oss-cn-shenzhen.aliyuncs.com'
# 商家端后台地址
VITE_APP_MERCHANT_PLATFORM_URL = 'https://cloud-multishop.mall4j.com'
# 腾讯地图key (WebServiceAPI) 用于IP定位 & 地址位置解析
VITE_APP_MAP_KEY = 'xxx'
```
## 打包上传
### HBuilder :
h5:
hbuilder开发工具上面的菜单选择`发行-> 网址-PC Web或手机H5(仅适用于uni-app)`
![h5发行域名提示](../img/生产环境搭建/h5发行域名提示.png)
点击发行稍等片刻等导出h5成功后双击路径地址打开文件资源管理器
将 build —> h5 添加到压缩包上传到服务器
小程序:
发行到小程序的前提是,你已经下载好了 [微信开发者工具](https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html)
hbuilder开发工具上面的菜单选择`发行-> 小程序-微信(仅适用于uni-app)`
![微信小程序发行域名提示](../img/生产环境搭建/微信小程序发行域名提示.png)
点击发行,等微信开发者工具打开后执行下图操作
![微信小程序发行](../img/生产环境搭建/微信小程序发行.png)
此上传为体验版,正式发布通知管理员通过微信官方审核通过才可正式上线
### 命令行
h5:
```bash
npm run build:h5
```
稍等片刻,等打包完成后,可在项目目录下 dist/build/ 中找到 h5文件夹 右键打开文件所在资源地址
h5文件夹添加到压缩包上传到服务器
小程序:
发行到小程序的前提是,你已经下载好了 [微信开发者工具](https://developers.weixin.qq.com/miniprogram/dev/devtools/stable.html)
```bash
npm run build:mp-weixin
```
执行完上述命令可在项目目录下 dist/build/ 中找到 mp-weixin 右键打开文件所在资源地址
双击mp-weixin进入到文件内部 双击app.wxss 打开小程序
![vscode打开微信小程序步骤2](../img/开发环境搭建/vscode打开微信小程序步骤1.png)
再执行一次上面流程的微信小程序的发行即可
### 部署到二级目录
假设部署在 h5 目录,即访问的地址为 https://xxxx.xxx/h5需要修改以下配置
1. src/manifest.json 配置文件中的 h5 配置
```json
{
"h5": {
"router": {
// 添加 base项设置为 '/目录名称/'
"base": '/h5/'
}
}
}
```
2. nginx 配置
```nginx
location /h5 {
try_files $uri $uri/ /h5/;
}
```
## 编译为app
参考 app离线打包 文档