From d18aeaae0f9bb6e21a74af2439142bb324e2e1ff Mon Sep 17 00:00:00 2001
From: WanP <3515436235@qq.com>
Date: Fri, 14 Nov 2025 16:07:02 +0800
Subject: [PATCH] addfallbackimg
---
README.md | 48 ++++++++++++++++--
src/pages/comments/comments.vue | 12 ++++-
src/pages/findmore/findmore.vue | 2 +-
src/pages/post.vue | 8 +--
src/static/imgs/empty-img/b-empty-img.webp | Bin 0 -> 2192 bytes
src/static/imgs/empty-img/b-empty-img@2x.webp | Bin 0 -> 4360 bytes
src/static/imgs/empty-img/b-empty-img@3x.webp | Bin 0 -> 6574 bytes
7 files changed, 60 insertions(+), 10 deletions(-)
create mode 100644 src/static/imgs/empty-img/b-empty-img.webp
create mode 100644 src/static/imgs/empty-img/b-empty-img@2x.webp
create mode 100644 src/static/imgs/empty-img/b-empty-img@3x.webp
diff --git a/README.md b/README.md
index 7340ac9..3073be6 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,5 @@
# paipweb 项目
+
## 项目概述
- **项目名称**: paipweb
@@ -25,17 +26,21 @@ yarn install
## 开发环境运行
### H5 开发模式
+
```bash
npm run dev:h5
```
+
启动后访问 http://localhost:5173
### 自定义平台开发模式
+
```bash
npm run dev:custom
```
### SSR 模式(H5)
+
```bash
npm run dev:h5:ssr
```
@@ -43,17 +48,21 @@ npm run dev:h5:ssr
## 构建打包
### H5 构建
+
```bash
npm run build:h5
```
+
构建产物位于 `dist/build/h5` 目录
### 自定义平台构建
+
```bash
npm run build:custom
```
### SSR 构建(H5)
+
```bash
npm run build:h5:ssr
```
@@ -65,30 +74,44 @@ paipweb/
├── src/ # 源代码目录
│ ├── App.vue # 应用入口
│ ├── main.js # 主入口文件
+│ ├── api/ # API 接口
+│ │ └── api.js # API 配置
│ ├── pages/ # 页面目录
-│ │ ├── components/ # 组件目录
-│ │ └── index/ # 首页
+│ │ ├── comments/ # 评论组件
+│ │ ├── findmore/ # 发现更多组件
+│ │ ├── head/ # 下载应用组件
+│ │ ├── index/ # 首页
+│ │ ├── intereact/ # 互动组件
+│ │ ├── news.vue # 新闻页面
+│ │ ├── post.vue # 帖子页面
+│ │ └── video.vue # 视频页面
│ ├── stores/ # 状态管理
│ │ └── common.js # 公共状态
│ ├── static/ # 静态资源
│ │ ├── fonts/ # 字体文件
│ │ ├── imgs/ # 图片资源
+│ │ ├── logo.png # 应用图标
│ │ └── videos/ # 视频资源
+│ ├── pages.json # 页面配置
+│ ├── manifest.json # 应用配置
│ └── uni.scss # 全局样式
-├── uni_modules/ # uni-app 模块
+├── uni_modules/ # uni-app 模块(包含各种UI组件)
├── package.json # 项目配置
├── vite.config.js # Vite 配置
+├── index.html # HTML 入口文件
└── manifest.json # 应用配置
```
## 测试指南
### 功能测试
+
1. 运行开发服务器:`npm run dev:h5`
2. 在浏览器中访问 http://localhost:5173
3. 测试各个页面的功能是否正常
### 打包测试
+
1. 执行构建命令:`npm run build:h5`
2. 检查构建产物是否完整
3. 在服务器上部署构建产物进行测试
@@ -96,16 +119,19 @@ paipweb/
## 常见问题
### 依赖安装失败
+
- 确保 Node.js 版本符合要求
- 尝试清除缓存:`npm cache clean --force`
- 使用淘宝镜像:`npm config set registry https://registry.npmmirror.com`
### 构建失败
+
- 检查 Node.js 和 npm 版本
- 确认所有依赖已正确安装
- 查看控制台错误信息进行排查
### 样式问题
+
- 检查 Sass 是否正确安装
- 确认 uni.scss 中的变量和混入是否正确导入
@@ -116,3 +142,19 @@ paipweb/
- 页面文件放在 `src/pages` 目录下
- 公共组件放在 `src/pages/components` 目录下
- 状态管理使用 Pinia
+
+# 当前存在问题
+
+- 目前是自动跳转到指定页面,后续按需修改跳转逻辑
+ - 等待阶段:当前还没有添加等待动画,后续按需添加
+ - 加载失败:缺省图貌似需要修改
+- 页面布局问题
+ - FindMore 组件:目前采用 fixed 定位,固定在页面底部
+ - Video 页面:视频与评论在拉动时,评论和右侧互动区域会跟随浏览器窗口向上移动,导致重叠遮挡问题;右侧互动区域图标需要更换
+ - Post/News 页面:评论组件互动区域布局问题(可以先检查)
+ - 评论组件
+ - 互动区域图标需要更换
+ - 评论父子关系需要使用数据中的 parent(Comment)Id 进行追踪再展示(还没有实现)
+ - 在 video 页面后续可能会变更为弹幕组件
+ - 缺省图
+ - 各个页面/组件缺省图需要更换
diff --git a/src/pages/comments/comments.vue b/src/pages/comments/comments.vue
index e7d1f61..0ddb7b5 100644
--- a/src/pages/comments/comments.vue
+++ b/src/pages/comments/comments.vue
@@ -82,7 +82,7 @@
@@ -528,11 +528,19 @@ main {
.nocomments {
display: flex;
flex-direction: column;
+ align-items: center;
+ justify-content: center;
text-align: center;
margin: 0 auto;
max-width: 100%;
- gap: 12px;
+ gap: 8px;
padding: 12px;
+ height: 200px;
+}
+
+.nocomments image {
+ display: block;
+ margin: 0 auto;
}
.nocommentstext {
diff --git a/src/pages/findmore/findmore.vue b/src/pages/findmore/findmore.vue
index 5a2ecf2..89f8596 100644
--- a/src/pages/findmore/findmore.vue
+++ b/src/pages/findmore/findmore.vue
@@ -28,7 +28,7 @@ const common = useCommonStore()
.openapptext {
width: 96px;
height: 22px;
- font-size: 16px;
+ font-size: 1em;
font-weight: 600;
font-stretch: normal;
font-style: normal;
diff --git a/src/pages/post.vue b/src/pages/post.vue
index 1f21eaa..9fcada4 100644
--- a/src/pages/post.vue
+++ b/src/pages/post.vue
@@ -300,23 +300,23 @@ page,
.page {
width: 100%;
max-width: 430px;
- height: auto;
+ height: 100vh;
display: flex;
flex-direction: column;
margin: 0 auto;
- position: relative;
+ /* position: relative; */
}
.content {
flex-shrink: 0;
- overflow: hidden;
+ /* overflow: hidden; */
display: flex;
flex-direction: column;
}
.moment {
width: 100%;
- flex-shrink: 0;
+ /* flex-shrink: 0; */
display: flex;
flex-direction: column;
box-sizing: border-box;
diff --git a/src/static/imgs/empty-img/b-empty-img.webp b/src/static/imgs/empty-img/b-empty-img.webp
new file mode 100644
index 0000000000000000000000000000000000000000..1bb65212a9b499248f47d2d0b707d34442108e4c
GIT binary patch
literal 2192
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
literal 0
HcmV?d00001
diff --git a/src/static/imgs/empty-img/b-empty-img@3x.webp b/src/static/imgs/empty-img/b-empty-img@3x.webp
new file mode 100644
index 0000000000000000000000000000000000000000..0631c7f7975a2adab44f1f4b99da61bbf08e6c88
GIT binary patch
literal 6574
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
AIsgCw
literal 0
HcmV?d00001