mall4ms-bbc:uniapp项目,可发行为H5、android/ios app
NodeJS 项目要求最低 18.12.0,推荐 20.9.0
如果不了解怎么安装nodejs的,可以参考 菜鸟教程的nodejs相关
项目要求使用 pnpm 包管理工具
使用编辑器打开项目,在根目录执行以下命令安装依赖
pnpm install
如果不想使用 pnpm,请删除 package.json 文件中 pnpm 相关内容后再进行安装
{
"scripts" : {
"preinstall": "npx only-allow pnpm" // 删除此行
},
"engines": {
"pnpm": ">=7" // 删除此行
},
"pnpm": { // 删除此项
...
}
}
修改 .env.production 连接后台。
VITE_APP_MP_APPID :微信公众号appid
VITE_APP_BASE_API : mall4ms-bbc 这个项目连接的是multishop.jar提供的接口
VITE_APP_WS_IM_API : 当然他们还需要与用户进行客服消息通讯,所以也要连接websocket,访问wukongim中间件提供的ws端口
VITE_APP_H5_DOMAIN:域名地址配置-用于分享时跳转链接
VITE_APP_MERCHANT_PLATFORM_URL:商家端后台地址(pc) ,部分功能受限时展示地址指示用户到PC端操作
VITE_APP_RESOURCES_URL : 对应七牛云 or 阿里云的图片域名地址
VITE_APP_MAP_KEY:天地图Key,用于地图相关功能
VITE_APP_URL_SCHEMES:App标识,用于跳转应用
# 如需添加更多环境变量,请以 VITE_APP_ 开头声明
# 在代码中使用 import.meta.env.VITE_APP_XXX 获取指定变量
# 环境配置标识
VITE_APP_ENV = 'production'
# 微信公众号appid
VITE_APP_MP_APPID = 'wx42bbe857570c5b40'
# 统一接口域名
VITE_APP_BASE_API = 'https://b2b2c-multishop.mall4j.com/apis'
# 客服webstock接口请求地址,https对应wss,http对应ws
VITE_APP_WS_IM_API = 'wss://b2b2c-im.mall4j.com'
# 移动端域名地址配置
VITE_APP_H5_DOMAIN = 'https://h5.mall4j.com/'
# 商家端后台地址(pc)
VITE_APP_MERCHANT_PKATFORM_URL = 'https://b2b2c-multishop.mall4j.com/'
# 图片域名
VITE_APP_RESOURCES_URL = 'https://img.mall4j.com/'
# 天地图Key (应用类型:浏览器端)用于地图相关功能
VITE_APP_MAP_KEY = ''
# h5或其它app打开当前App的自定义UrlSchemes,还需要在manifest.json -> app-plus -> android/schemes 与 ios urltypes 中进行配置 (二者需要一致) (不可与用户移动端的urlSchemes相同)
VITE_APP_URL_SCHEMES = 'lanhaibbcms'
manifest.json 配置文件
{
"h5": {
"sdkConfigs" : {
"maps" : {
"qqmap" : {
// 用于h5端ip定位
"key" : ""
}
}
}
}
}
发行-> 网站-H5手机版,或使用命令行 npm run build:h5 编译编译完成后可在控制台找到输出路径
将步骤1中生成的文件夹中的文件,压缩,上传到服务器nginx指定好的目录(/nginx/conf.d/b2b2c-ms.conf ),解压
server {
listen 80;
server_name b2b2c-multishop-h5.mall4j.com;
location / {
try_files $uri $uri/ /;
root /usr/share/nginx/html/multishop-h5;
index index.html;
}
error_page 404 /404.html;
location = /404-light.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
假设项目需要部署到 /ms目录,即访问链接为 https://xxx.xxx/ms,需要修改以下配置
mainfest.json 配置文件
{
"h5": {
"router" : {
"mode" : "history",
// 添加此配置
"base" : "/ms/"
}
}
}
nginx 配置文件
location /ms {
try_files $uri $uri/ /ms/;
}
参考安卓、ios打包的流程