Bläddra i källkod

📦 修改字号和显示非遗美食非遗民俗

快乐的梦鱼 3 veckor sedan
förälder
incheckning
01bfbe1cfd

+ 1 - 1
src/common/scss/common.scss

@@ -1,5 +1,5 @@
 .home-title {
-  font-size: 35rpx;
+  font-size: 42rpx;
   margin: 40rpx 0 20rpx 0;
   color: #432A04;
   font-family: "SongtiSCBlack";

+ 4 - 4
src/pages/article/common/IntroBlock.vue

@@ -82,11 +82,11 @@ const emit = defineEmits([
     .label {
       color: #666666;
       font-weight: 400;
-      font-size: 28rpx;
+      font-size: 30rpx;
       flex-shrink: 0;
     }
     .value {
-      font-size: 28rpx;
+      font-size: 30rpx;
       color: #312520;
       font-weight: 400;
       text-align: right;
@@ -97,11 +97,11 @@ const emit = defineEmits([
   .sub-title{
     margin-left: 20rpx;
     margin-top: 10rpx;
-    font-size: 30rpx;
+    font-size: 35rpx;
     font-weight: 600;
   }
   .desc{
-    padding:30rpx;
+    padding: 30rpx 0;
   }
   .navigation{
     display: flex;

+ 18 - 78
src/pages/article/list.vue

@@ -1,62 +1,27 @@
 <template>
-  <view class="article_list">
-    <view class="search">
-      <uni-search-bar 
-        v-model="searchText"
-        radius="100"
-        bgColor="#fff"
-        placeholder="搜一搜" 
-        clearButton="auto"
-        cancelButton="none"
-        @confirm="search"
-      />
-    </view>
-    <view class="complex-list-horizontal-1">
-      <view 
-        class="item" 
-        hover-class="pressed"
-        v-for="item in listLoader.list.value"
-        :key="item.id" 
-        @click="goDetail(item.id)"
-      >
-        <ImageWrapper :src="item.image" width="170rpx" height="190rpx" />
-        <view class="info">
-          <view class="name ellipsis-2">{{ item.title }}</view>
-          <view class="desc">{{ item.date }}</view>
-        </view>
-      </view>
-    </view>
-    <SimplePageListLoader :loader="listLoader" />
-  </view>
+  <CommonListPage
+    title="闽南文化资讯"
+    :load="loadData"
+    itemType="article-common"
+  />
 </template>
 
 <script setup lang="ts">
-import CommonContent, { GetContentListParams } from '@/api/CommonContent';
-import SimplePageListLoader from '@/common/components/SimplePageListLoader.vue';
-import ImageWrapper from '@/common/components/ImageWrapper.vue';
-import { useSimplePageListLoader } from '@/common/composeabe/SimplePageListLoader';
-import { ref } from 'vue';
+import { GetContentListParams } from '@/api/CommonContent';
 import { DataDateUtils } from '@imengyu/js-request-transform';
-import { navTo } from '@/common/utils/PageAction';
-import { onLoad } from '@dcloudio/uni-app';
+import NewsIndexContent from '@/api/news/NewsIndexContent';
+import CommonListPage from './common/CommonListPage.vue';
 
-const searchText = ref('');
-const listLoader = useSimplePageListLoader<{
-  id: number,
-  image: string,
-  title: string,
-  date: string
-}, {
-  modelId: number|undefined, 
-  mainBodyColumnId: number|undefined,
-}>(8, async (page, pageSize, params) => {
-  if (!params || !params.modelId || !params.mainBodyColumnId)
-    throw new Error("未传入参数,当前页面需要参数");
-  const res = await CommonContent.getContentList(new GetContentListParams().setSelfValues({
-    keywords: searchText.value,
-    modelId: params.modelId, 
-    mainBodyColumnId: params.mainBodyColumnId ,
-  }), page, pageSize);
+async function loadData(
+  page: number, 
+  pageSize: number,
+  searchText: string,
+  dropDownValues: number[]
+) {
+  const res = await NewsIndexContent.getContentList(new GetContentListParams()
+    .setMainBodyColumnId([228/* , 298, 299 */])
+    .setKeywords(searchText)
+  , page, pageSize);
   return { list: res.list.map((item) => {
     return {
       id: item.id,
@@ -65,30 +30,5 @@ const listLoader = useSimplePageListLoader<{
       date: DataDateUtils.formatDate(item.publishAt, 'YYYY-MM-dd'),
     }
   }), total: res.total }
-});
-
-function goDetail(id: number) {
-  navTo('/pages/article/details', { id });
-}
-function search() {
-  listLoader.loadData(undefined, true);
 }
-
-onLoad((query) => {
-  if (query?.title) {
-    uni.setNavigationBarTitle({
-      title: query.title,
-    });
-  }
-  listLoader.loadData({
-    modelId: query?.modelId ? Number(query.modelId) : undefined, 
-    mainBodyColumnId: query?.mainBodyColumnId? Number(query.mainBodyColumnId) : undefined ,
-  })
-})
 </script>
-
-<style lang="scss">
-.article_list {
-  padding: 20rpx;
-}
-</style>

+ 4 - 4
src/pages/discover.vue

@@ -98,7 +98,7 @@
 
       
       <!-- 闽南文化资讯 -->
-      <HomeTitle title="闽南文化资讯" />
+      <HomeTitle title="闽南文化资讯" showMore @clickMore="navTo('/pages/article/list')" />
       <SimplePageContentLoader :loader="cultureData">
         <view class="d-flex w-100 flex-row flex-wrap align-stretch justify-between">
           <Box2LineLargeImageUserShadow 
@@ -143,6 +143,7 @@ import { navTo } from '@/common/utils/PageAction';
 import { useSimpleDataLoader } from '@/common/composeabe/SimpleDataLoader';
 import SimplePageContentLoader from '@/common/components/SimplePageContentLoader.vue';
 import { useHomePageMiniCommonListGoMoreAndGoDetail } from './article/common/CommonContent';
+import NewsIndexContent from '@/api/news/NewsIndexContent';
 
 const CategoryIcon1 = 'https://mncdn.wenlvti.net/app_static/minnan/images/discover/CategoryIcon1.png';
 const CategoryIcon2 = 'https://mncdn.wenlvti.net/app_static/minnan/images/discover/CategoryIcon2.png';
@@ -274,12 +275,11 @@ const communityData = useSimpleDataLoader(async () => {
 
 const {
   loader: cultureData,
-  goList: goCultureList,
   goDetail: goCultureDetail,
 } = useHomePageMiniCommonListGoMoreAndGoDetail({
   title: '闽南文化',
-  mainBodyColumnId: [252,253,254],
-  modelId: 3,
+  mainBodyColumnId: [228/* , 298, 299 */],
+  modelId: NewsIndexContent.modelId,
   itemType: 'article-common',
   detailsPage: '/pages/article/details',
 });

+ 8 - 8
src/pages/introduction/custom/list.vue

@@ -3,21 +3,21 @@
     title="闽南民俗"
     itemType="image-large-2"
     :detailsPage="[
-      '/pages/inhert/intangible/details',
       '/pages/article/details',
+      '/pages/inhert/intangible/details',
     ]"
     showTotal
     :dropDownNames="dropdownNames"
     :load="loadData" 
-    
+    :tabs="[
+      { id: 0, name: '民俗资讯' },
+      { id: 1, name: '非遗民俗' },
+    ]"
     :detailsParams="{
       modelId: 4,
     }"
   />
-  <!-- :tabs="[
-      { id: 0, name: '非遗民俗' },
-      { id: 1, name: '民俗资讯' },
-    ]" -->
+  <!--  -->
 </template>
 
 <script setup lang="ts">
@@ -37,7 +37,7 @@ async function loadData(
 ) {
   let res;
   switch (tabSelect) {
-    /* case 0:
+    case 1:
       res = await ProjectsContent.getContentList(new GetContentListParams()
         .setKeywords('民俗 ' + searchText)
       , page, pageSize);
@@ -50,7 +50,7 @@ async function loadData(
         ]
       })
       break;
-    case 1: */
+    case 0:
     default:
       res = await CommonContent.getContentList(new GetContentListParams()
         .setKeywords(searchText)

+ 9 - 8
src/pages/introduction/food/list.vue

@@ -3,18 +3,19 @@
     title="闽南美食"
     itemType="image-large-2"
     :detailsPage="[
-      '/pages/inhert/intangible/details',
       '/pages/article/details',
+      '/pages/inhert/intangible/details',
     ]"
     showTotal
     :dropDownNames="dropdownNames"
-    :load="loadData" 
+    :load="loadData"
+    :tabs="[
+      { id: 0, name: '美食资讯' },
+      { id: 1, name: '非遗美食' },
+    ]"
   />
 <!--   
-    :tabs="[
-      { id: 0, name: '非遗美食' },
-      { id: 1, name: '美食资讯' },
-    ]" -->
+     -->
 </template>
 
 <script setup lang="ts">
@@ -34,7 +35,7 @@ async function loadData(
 ) {
   let res;
   switch (tabSelect) {
-    /*case 0:
+    case 1:
        res = await ProjectsContent.getContentList(new GetContentListParams()
         .setKeywords('美食 ' + searchText)
       , page, pageSize);
@@ -47,7 +48,7 @@ async function loadData(
         ]
       })
       break;
-    case 1: */
+    case 0:
     default:
       res = await CommonContent.getContentList(new GetContentListParams()
         .setKeywords(searchText)