uni-app cli publish --platform h5 --project xxx运行结束中之后不会在unpackage dist build web下生成打包文件
uni-app cli publish --platform h5 --project xxx运行结束中之后不会在unpackage dist build web下生成打包文件
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows | 22621.2715 | HBuilderX |
| HBuilderX | 4.65 |
操作步骤:
- cli publish --platform h5 --project 项目名称
- 打包目录下没有立即出现打包后的文件
预期结果:
命令运行结束,打包后的文件出现
实际结果:
打包文件要等很久才出现
bug描述:
cli publish --platform h5 --project 项目名称
运行上面的命令,运行结束中之后不会在/unpackage/dist/build/web下生成打包文件,要等很久很久才发现那个目录下有打包文件夹,也就是说这个命令的打包时异步的?之前一直都是同步的啊,我想写脚本等命令运行结束之后复制打包后的文件,异步的话我该怎么办?
更多关于uni-app cli publish --platform h5 --project xxx运行结束中之后不会在unpackage dist build web下生成打包文件的实战教程也可以访问 https://www.itying.com/category-93-b0.html
2 回复
测试是正常的,你的项目很大吗。换一个项目试一下是否正常。
更多关于uni-app cli publish --platform h5 --project xxx运行结束中之后不会在unpackage dist build web下生成打包文件的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在 uni-app CLI 中,publish 命令确实是异步执行的,打包过程会在后台运行。你可以通过以下方式解决脚本等待问题:
- 使用
--watch参数监听打包完成状态:
cli publish --platform h5 --project 项目名称 --watch
该命令会持续监听打包进程,完成后自动退出。
- 在脚本中轮询检查打包目录:
#!/bin/bash
cli publish --platform h5 --project 项目名称 &
# 等待打包目录出现
while [ ! -d "unpackage/dist/build/h5" ]; do
sleep 2
done
# 后续复制操作
cp -r unpackage/dist/build/h5 /目标路径
- 或者使用构建完成钩子,在
vue.config.js中配置:
module.exports = {
chainWebpack: (config) => {
config.plugin('done').tap(() => {
setTimeout(() => {
// 打包完成后的处理逻辑
console.log('构建完成');
}, 100);
});
}
};

