Explorar o código

fix: 修复发布页面URL双重编码问题

- 移除chapter-detail.vue中多余的encodeURIComponent
- 移除publish/index.vue中多余的decodeURIComponent
- uni.navigateTo会自动处理URL编码解码,不需要手动处理
- 解决视频URL和标题被双重编码导致无法正常显示的问题
MyFramework User hai 4 meses
pai
achega
1afdbee49a

+ 2 - 2
my-uniapp-vue3/src/pages/book-generator/chapter-detail.vue

@@ -358,9 +358,9 @@ function goToPublish() {
   
   
   if (chapterVideoUrl.value) {
   if (chapterVideoUrl.value) {
     // 有视频,发布视频
     // 有视频,发布视频
-    // 直接使用 videoUrl 发布
+    // 直接使用 videoUrl 发布(uni.navigateTo 会自动编码,不需要手动 encodeURIComponent)
     uni.navigateTo({ 
     uni.navigateTo({ 
-      url: `/pages/publish/index?videoUrl=${encodeURIComponent(chapterVideoUrl.value)}&title=${encodeURIComponent(chapterTitle.value)}` 
+      url: `/pages/publish/index?videoUrl=${chapterVideoUrl.value}&title=${chapterTitle.value}` 
     });
     });
   } else if (chapterAudioUrl.value) {
   } else if (chapterAudioUrl.value) {
     // 只有音频,发布音频
     // 只有音频,发布音频

+ 2 - 1
my-uniapp-vue3/src/pages/publish/index.vue

@@ -723,7 +723,8 @@ onLoad(async (query: any) => {
   } else if (query?.videoUrl) {
   } else if (query?.videoUrl) {
     // 直接使用视频URL发布(来自书籍章节)
     // 直接使用视频URL发布(来自书籍章节)
     isAudioPublish.value = false;
     isAudioPublish.value = false;
-    videoUrl.value = decodeURIComponent(query.videoUrl);
+    // uni.navigateTo 已自动解码,不需要再 decodeURIComponent
+    videoUrl.value = query.videoUrl;
     publishTitle.value = query.title || '视频';
     publishTitle.value = query.title || '视频';
     publishDesc.value = '';
     publishDesc.value = '';
     console.log('[Publish] 使用视频URL发布:', videoUrl.value);
     console.log('[Publish] 使用视频URL发布:', videoUrl.value);