Showing
2 changed files
with
31 additions
and
24 deletions
| 1 | <template> | 1 | <template> |
| 2 | <div class="book-detail-page content-bg"> | 2 | <div class="book-detail-page content-bg"> |
| 3 | - <div class="modify-top"></div> | 3 | + <div class="modify-top" /> |
| 4 | - <div style="height: 1.5rem;"></div> | 4 | + <div style="height: 1.5rem;" /> |
| 5 | <div class="book-detail"> | 5 | <div class="book-detail"> |
| 6 | <div style="text-align: center;"> | 6 | <div style="text-align: center;"> |
| 7 | <van-image width="220" height="220" :src="bookInfo.cover" /> | 7 | <van-image width="220" height="220" :src="bookInfo.cover" /> |
| ... | @@ -10,10 +10,12 @@ | ... | @@ -10,10 +10,12 @@ |
| 10 | <p class="book-post">{{ bookInfo.name }}</p> | 10 | <p class="book-post">{{ bookInfo.name }}</p> |
| 11 | <div id="book-intro" :class="{ 'van-multi-ellipsis--l3': isToggle }">{{ bookInfo.note }}</div> | 11 | <div id="book-intro" :class="{ 'van-multi-ellipsis--l3': isToggle }">{{ bookInfo.note }}</div> |
| 12 | <div v-if="hasToggle"> | 12 | <div v-if="hasToggle"> |
| 13 | - <div v-if="isToggle" @click="isToggle = false" class="book-toggle-icon">展开 | 13 | + <div v-if="isToggle" class="book-toggle-icon" @click="isToggle = false"> |
| 14 | + 展开 | ||
| 14 | <van-icon style="vertical-align: middle;" size="0.9rem" :name="icon_down" /> | 15 | <van-icon style="vertical-align: middle;" size="0.9rem" :name="icon_down" /> |
| 15 | </div> | 16 | </div> |
| 16 | - <div v-else @click="isToggle = true" class="book-toggle-icon">折叠 | 17 | + <div v-else class="book-toggle-icon" @click="isToggle = true"> |
| 18 | + 折叠 | ||
| 17 | <van-icon style="vertical-align: middle;" size="0.9rem" :name="icon_up" /> | 19 | <van-icon style="vertical-align: middle;" size="0.9rem" :name="icon_up" /> |
| 18 | </div> | 20 | </div> |
| 19 | </div> | 21 | </div> |
| ... | @@ -37,12 +39,12 @@ | ... | @@ -37,12 +39,12 @@ |
| 37 | <div class="book-video-language"> | 39 | <div class="book-video-language"> |
| 38 | <van-row> | 40 | <van-row> |
| 39 | <van-col span="6"> | 41 | <van-col span="6"> |
| 40 | - <div @click="toggleLanguage('mandarin')" :class="[checkMandarin ? 'checked' : 'uncheck']">普通话</div> | 42 | + <div :class="[checkMandarin ? 'checked' : 'uncheck']" @click="toggleLanguage('mandarin')">普通话</div> |
| 41 | </van-col> | 43 | </van-col> |
| 42 | <van-col span="6"> | 44 | <van-col span="6"> |
| 43 | - <div @click="toggleLanguage('localism')" :class="[checkLocalism ? 'checked' : 'uncheck']">方言</div> | 45 | + <div :class="[checkLocalism ? 'checked' : 'uncheck']" @click="toggleLanguage('localism')">方言</div> |
| 44 | </van-col> | 46 | </van-col> |
| 45 | - <van-col span="12" v-if="checkLocalism" @click="showPicker = true"> | 47 | + <van-col v-if="checkLocalism" span="12" @click="showPicker = true"> |
| 46 | <div class="choose-wrapper"> | 48 | <div class="choose-wrapper"> |
| 47 | <div class="text"> | 49 | <div class="text"> |
| 48 | {{ chooseLanguage.text }} | 50 | {{ chooseLanguage.text }} |
| ... | @@ -54,31 +56,35 @@ | ... | @@ -54,31 +56,35 @@ |
| 54 | </van-col> | 56 | </van-col> |
| 55 | </van-row> | 57 | </van-row> |
| 56 | <van-popup v-model:show="showPicker" round position="bottom"> | 58 | <van-popup v-model:show="showPicker" round position="bottom"> |
| 57 | - <van-picker :columns="columns" :columns-field-names="{ text: 'text', value: 'val', children: 'children' }" | 59 | + <van-picker |
| 58 | - @cancel="showPicker = false" @confirm="onConfirm" /> | 60 | + :columns="columns" :columns-field-names="{ text: 'text', value: 'val', children: 'children' }" @cancel="showPicker = false" @confirm="onConfirm" |
| 61 | + /> | ||
| 59 | </van-popup> | 62 | </van-popup> |
| 60 | </div> | 63 | </div> |
| 61 | </van-sticky> | 64 | </van-sticky> |
| 62 | 65 | ||
| 63 | <div class="book-video-list"> | 66 | <div class="book-video-list"> |
| 64 | - <van-list v-model:loading="loading" :finished="finished" :finished-text="finishedTextStatus ? '没有更多了' : ''" | 67 | + <van-list v-model:loading="loading" :finished="finished" :finished-text="finishedTextStatus ? '没有更多了' : ''" @load="onLoad"> |
| 65 | - @load="onLoad"> | 68 | + <template v-for="item in prod_list" :key="item"> |
| 66 | - <template v-for="item in prod_list" :key="item" style="height: 3rem;"> | ||
| 67 | <video-card :item="item"> | 69 | <video-card :item="item"> |
| 68 | <template #bookDetailSub> | 70 | <template #bookDetailSub> |
| 69 | - <div @click="goToDetail(item.id, item.book_id, item.type)" | 71 | + <div |
| 70 | - style="color: #999999; padding: 0px 1rem 0.5rem;">{{ item.kg_name }} | {{ item.localism_type }} </div> | 72 | + style="color: #999999; padding: 0px 1rem 0.5rem;" |
| 73 | + @click="goToDetail(item.id, item.book_id, item.type)" | ||
| 74 | + > | ||
| 75 | + {{ item.kg_name }} | {{ item.localism_type }} | ||
| 76 | + </div> | ||
| 71 | </template> | 77 | </template> |
| 72 | </video-card> | 78 | </video-card> |
| 73 | </template> | 79 | </template> |
| 74 | </van-list> | 80 | </van-list> |
| 75 | </div> | 81 | </div> |
| 76 | - <div style="height: 2rem;"></div> | 82 | + <div style="height: 2rem;" /> |
| 77 | <van-empty v-if="emptyStatus" class="custom-image" :image="no_image" description="暂无作品信息" /> | 83 | <van-empty v-if="emptyStatus" class="custom-image" :image="no_image" description="暂无作品信息" /> |
| 78 | </div> | 84 | </div> |
| 79 | - <div style="height: 6rem;"></div> | 85 | + <div style="height: 6rem;" /> |
| 80 | <div class="book-bar"> | 86 | <div class="book-bar"> |
| 81 | - <div @click="onSubscribe" class="text"> | 87 | + <div class="text" @click="onSubscribe"> |
| 82 | <template v-if="!bookInfo.is_subscribe"> | 88 | <template v-if="!bookInfo.is_subscribe"> |
| 83 | <van-icon :name="icon_subscribed" size="1.25rem" style="margin: 0 auto;" /> | 89 | <van-icon :name="icon_subscribed" size="1.25rem" style="margin: 0 auto;" /> |
| 84 | <span style="font-size: 0.85rem;">订阅</span> | 90 | <span style="font-size: 0.85rem;">订阅</span> |
| ... | @@ -89,23 +95,23 @@ | ... | @@ -89,23 +95,23 @@ |
| 89 | </template> | 95 | </template> |
| 90 | </div> | 96 | </div> |
| 91 | <div class="button"> | 97 | <div class="button"> |
| 92 | - <my-button @on-click="uploadVideo" type="primary">上传作品</my-button> | 98 | + <my-button type="primary" @on-click="uploadVideo">上传作品</my-button> |
| 93 | </div> | 99 | </div> |
| 94 | <div class="button"> | 100 | <div class="button"> |
| 95 | - <my-button @on-click="toDonate" type="plain">爱心捐书</my-button> | 101 | + <my-button type="plain" @on-click="toDonate">爱心捐书</my-button> |
| 96 | </div> | 102 | </div> |
| 97 | </div> | 103 | </div> |
| 98 | - <shortcut-fixed type="C" :item="shortcutItem"></shortcut-fixed> | 104 | + <shortcut-fixed type="C" :item="shortcutItem" /> |
| 99 | </div> | 105 | </div> |
| 100 | 106 | ||
| 101 | <!-- 上传时,如果没有默认儿童提示弹框, 如果没有实名认证提示弹框 --> | 107 | <!-- 上传时,如果没有默认儿童提示弹框, 如果没有实名认证提示弹框 --> |
| 102 | <notice-overlay :show="showNotice" :text="noticeText" @on-submit="onSubmit" @on-close="onClose"> | 108 | <notice-overlay :show="showNotice" :text="noticeText" @on-submit="onSubmit" @on-close="onClose"> |
| 103 | <div style="color: #333333;"> | 109 | <div style="color: #333333;"> |
| 104 | - <div v-html="noticeHtml"></div> | 110 | + <div v-html="noticeHtml" /> |
| 105 | </div> | 111 | </div> |
| 106 | </notice-overlay> | 112 | </notice-overlay> |
| 107 | 113 | ||
| 108 | - <donate-book :showPopup="showDonate" :item="userInfo" @on-close="closeDonate"></donate-book> | 114 | + <donate-book :show-popup="showDonate" :item="userInfo" @on-close="closeDonate" /> |
| 109 | 115 | ||
| 110 | <van-overlay :show="show" z-index="9999"> | 116 | <van-overlay :show="show" z-index="9999"> |
| 111 | <div class="wrapper" @click.stop> | 117 | <div class="wrapper" @click.stop> |
| ... | @@ -117,7 +123,7 @@ | ... | @@ -117,7 +123,7 @@ |
| 117 | <script setup> | 123 | <script setup> |
| 118 | import { ref, onActivated, nextTick } from 'vue' | 124 | import { ref, onActivated, nextTick } from 'vue' |
| 119 | import { useRoute, useRouter, onBeforeRouteLeave } from 'vue-router' | 125 | import { useRoute, useRouter, onBeforeRouteLeave } from 'vue-router' |
| 120 | -import { Cookies, $, _, storeToRefs, mainStore, Toast, hasEllipsis } from '@/utils/generatePackage' | 126 | +import { Cookies, _, storeToRefs, mainStore, Toast, hasEllipsis } from '@/utils/generatePackage' |
| 121 | import { MyButton, VideoCard, NoticeOverlay, DonateBook, ShortcutFixed } from '@/utils/generateModules' | 127 | import { MyButton, VideoCard, NoticeOverlay, DonateBook, ShortcutFixed } from '@/utils/generateModules' |
| 122 | import { icon_video, icon_up, icon_down, icon_subscribed, icon_unsubscribe, no_image } from '@/utils/generateIcons' | 128 | import { icon_video, icon_up, icon_down, icon_subscribed, icon_unsubscribe, no_image } from '@/utils/generateIcons' |
| 123 | import { JSJ_FORM_C } from '@/constant' | 129 | import { JSJ_FORM_C } from '@/constant' | ... | ... |
-
Please register or login to post a comment