From b2ccf76fd04e55e524eb0b7f0c435f033d329209 Mon Sep 17 00:00:00 2001 From: Wenzhe Date: Sat, 31 Jan 2026 22:54:50 +0800 Subject: [PATCH] v1.1.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1、将发布文件加入到gitignore中 2、增加发布脚本 3、隆福寺模块试用动态图片加载,避免初次打开时再进行图片的下载 --- .gitignore | 1 + components/LongfusiScene.vue | 11 ++- dist.sh | 125 +++++++++++++++++++++++++++++++++++ 3 files changed, 134 insertions(+), 3 deletions(-) create mode 100644 .gitignore create mode 100644 dist.sh diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a503fa2 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/unpackage/ diff --git a/components/LongfusiScene.vue b/components/LongfusiScene.vue index 4dce69f..fccf3fe 100644 --- a/components/LongfusiScene.vue +++ b/components/LongfusiScene.vue @@ -40,11 +40,16 @@ const handleFuClick = () => { emit('collect-seal') } +// 动态加载图片 +const getImageUrl = (name) => { + return new URL(`/static/lfs/${name}.png`, import.meta.url).href +} + // 图片浏览数据 const lfsImages = [ - { src: '/static/lfs/img1.png', title: '传艺承福阁' }, - { src: '/static/lfs/img2.png', title: '京味福食巷' }, - { src: '/static/lfs/img3.png', title: '雅趣福玩斋' } + { src: getImageUrl('img1'), title: '传艺承福阁' }, + { src: getImageUrl('img2'), title: '京味福食巷' }, + { src: getImageUrl('img3'), title: '雅趣福玩斋' } ] // 图片浏览器弹窗状态 diff --git a/dist.sh b/dist.sh new file mode 100644 index 0000000..c7c7c3f --- /dev/null +++ b/dist.sh @@ -0,0 +1,125 @@ +#!/bin/bash +set -euo pipefail + +WORKSPACE_PATH="/Users/wenzhe/dev/workspace/go/projs/qiusheng/xinchun2026/h5-poster-project" +APP_NAME="__UNI__86304DC" +VARIANT="jiangsu" + +# App 发布路径 +APP_SOURCE_DIR="./unpackage/resources/$APP_NAME" +APP_TARGET_DIR="$WORKSPACE_PATH/app/src/$VARIANT/assets/apps/$APP_NAME" + +# H5 发布路径 +H5_SOURCE_DIR="./unpackage/dist/build/web" +H5_TARGET_DIR="$WORKSPACE_PATH/h5" + +# 颜色定义 +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +NC='\033[0m' + +# 日志函数 +log_info() { echo -e "${GREEN}[INFO]${NC} $(date '+%Y-%m-%d %H:%M:%S') $*"; } +log_warn() { echo -e "${YELLOW}[WARN]${NC} $(date '+%Y-%m-%d %H:%M:%S') $*"; } +log_error() { echo -e "${RED}[ERROR]${NC} $(date '+%Y-%m-%d %H:%M:%S') $*"; } + +# 显示使用帮助 +show_help() { + echo "用法: $0 [app|h5]" + echo "" + echo "参数:" + echo " app 发布 App 版本 (默认)" + echo " h5 发布 H5 版本" + echo "" + echo "示例:" + echo " $0 app # 发布 App" + echo " $0 h5 # 发布 H5" +} + +# 检查 rsync 是否可用 +check_rsync() { + if ! command -v rsync &> /dev/null; then + log_error "rsync 命令未找到,请确保已安装" + exit 1 + fi + log_info "使用 rsync 版本: $(rsync --version | head -n1)" +} + +# 同步文件函数 +sync_files() { + local source_dir="$1" + local target_dir="$2" + local deploy_type="$3" + + log_info "开始部署: $deploy_type" + + # 检查源目录 + if [ ! -d "$source_dir" ]; then + log_error "源目录不存在: $source_dir" + exit 1 + fi + + # 创建目标父目录 + mkdir -p "$target_dir" + + # 统计源目录信息 + local source_size=$(du -sh "$source_dir" 2>/dev/null | cut -f1 || echo "未知") + local source_count=$(find "$source_dir" -type f 2>/dev/null | wc -l) + + log_info "源目录信息: 大小=${source_size}, 文件数=${source_count}" + log_info "开始同步文件..." + + # 使用 rsync 同步 + if rsync -az --delete --progress --exclude='.DS_Store' "$source_dir/" "$target_dir/"; then + log_info "同步完成!" + + # 验证同步结果 + if [ -d "$target_dir" ]; then + local target_size=$(du -sh "$target_dir" 2>/dev/null | cut -f1 || echo "未知") + local target_count=$(find "$target_dir" -type f 2>/dev/null | wc -l) + + log_info "目标目录信息: 大小=${target_size}, 文件数=${target_count}" + + if [ "$source_count" -eq "$target_count" ]; then + log_info "✓ 文件数量验证通过" + else + log_warn "⚠ 文件数量不匹配: 源=$source_count, 目标=$target_count" + fi + fi + else + log_error "rsync 同步失败!" + exit 1 + fi +} + +main() { + local deploy_type="${1:-h5}" + + # 检查 rsync + check_rsync + + case "$deploy_type" in + app) + log_info "========== 开始 App 发布 ==========" + sync_files "$APP_SOURCE_DIR" "$APP_TARGET_DIR" "App" + log_info "========== App 发布完成 ==========" + ;; + h5) + log_info "========== 开始 H5 发布 ==========" + sync_files "$H5_SOURCE_DIR" "$H5_TARGET_DIR" "H5" + log_info "========== H5 发布完成 ==========" + ;; + help|--help|-h) + show_help + exit 0 + ;; + *) + log_error "未知的发布类型: $deploy_type" + show_help + exit 1 + ;; + esac +} + +main "$@"