shenwu 6 månader sedan
förälder
incheckning
eafa42c112
5 ändrade filer med 434 tillägg och 64 borttagningar
  1. 7 1
      src/Hook/useApi.ts
  2. 195 37
      src/pages/index/index.tsx
  3. 2 25
      src/pages/my/index.tsx
  4. 146 1
      src/server/index/index.ts
  5. 84 0
      src/store/index.ts

+ 7 - 1
src/Hook/useApi.ts

@@ -1,6 +1,6 @@
 import { getParagraphList, getShortBookInfo, getShortBookInfoAppListOfPage, readingShort, startReadShort } from '@src/server/book/short'
 import { bookrackShrot } from '@src/server/bookrack'
-import { getShortBanners, getShortHotCategory, getShortHotBooks } from '@src/server/index/index'
+import { getShortBanners, getShortHotCategory, getShortHotBooks, getShortNewBooks, getShortHotRec, getShortBestReviews, getShortClassicBooks, getShortBestBooks, getShortGuessLike } from '@src/server/index/index'
 /**用于长短篇小说区别,使用不同的接口
  * 传入appInfoStroe
 */
@@ -25,6 +25,12 @@ function useApi() {
             "banners": isLong ? getShortBanners : getShortBanners,
             "hot_books": isLong ? getShortHotBooks : getShortHotBooks,//热门标签
             "hot_category": isLong ? getShortHotCategory : getShortHotCategory,//热门书籍
+            "new_books": isLong ? getShortNewBooks : getShortNewBooks,//重磅新书
+            "hot_rec": isLong ? getShortHotRec : getShortHotRec,//热门推荐
+            "best_reviews": isLong ? getShortBestReviews : getShortBestReviews,//口碑
+            "classic_books": isLong ? getShortClassicBooks : getShortClassicBooks,//经典
+            "best_books": isLong ? getShortBestBooks : getShortBestBooks,//必看
+            "guess_like": isLong ? getShortGuessLike : getShortGuessLike,//猜喜欢
         }
     }
 

+ 195 - 37
src/pages/index/index.tsx

@@ -3,6 +3,7 @@ import { observer, inject } from 'mobx-react';
 import { useDidHide, useDidShow } from '@tarojs/taro';
 //==========components组件引用========================
 import TopNavBar from '@src/components/TopNavBar';
+import ScrollViewHoc from '@src/components/ScrollView';
 import { Store } from '@src/app';
 import useApi from '@src/Hook/useApi';
 import BannerBox from '@src/components/PupPetry/BannerBox'
@@ -12,6 +13,8 @@ import BookHead from '@src/components/PupPetry/BookHead';
 import BookHotTabs from '@src/components/PupPetry/BookHotTabs';
 import BookboxColumnSmall from '@src/components/PupPetry/BookBox/BookboxColumnSmall';
 import BookboxRowMiddle from '@src/components/PupPetry/BookBox/BookboxRowMiddle';
+import BookboxColumnBig from '@src/components/PupPetry/BookBox/BookboxColumnBig';
+
 
 
 interface Props {
@@ -30,7 +33,7 @@ const Index: React.FC<Props> = ({ store }) => {
             return obj[item.componentType] = { ...item, eq: index }
         })
         return obj
-    }, [indexComponents, pageShow, bookStore.workDirection,indexStore.isLogin])
+    }, [indexComponents, pageShow, bookStore.workDirection, indexStore.isLogin])
     // 页面显示请求数据
     useEffect(() => {
         if (pageShow) {
@@ -52,7 +55,7 @@ const Index: React.FC<Props> = ({ store }) => {
     });
     // 处理首页展示的组件的请求
     const indexCompontent = () => {
-        console.log("indexConfig",indexConfig)
+        console.log("indexConfig", indexConfig)
         // 小程序的组件配置
         Object.keys(indexConfig)?.forEach(key => {
             switch (key) {
@@ -65,6 +68,30 @@ const Index: React.FC<Props> = ({ store }) => {
                 case "hot_category"://热门分类
                     getHotCategory()
                     break;
+                    {/* 重磅新书 new_books*/ }
+                case "new_books":
+                    getNewBooks()
+                    break;
+                    {/* 热门推荐 hot_rec*/ }
+                case "hot_rec":
+                    getHotRec()
+                    break;
+                    {/* 口碑佳作 best_reviews*/ }
+                case "best_reviews":
+                    getBestReviews()
+                    break;
+                    {/* 经典热书 classic_books*/ }
+                case "classic_books":
+                    getClassicBooks()
+                    break;
+                    {/* 必看好书 best_books*/ }
+                case "best_books":
+                    getBestBooks()
+                    break;
+                    {/* 猜你喜欢 guess_like*/ }
+                case "guess_like":
+                    getGuessLike({ pageSize: 20, pageNum: 1 })
+                    break;
             }
         })
     }
@@ -91,42 +118,173 @@ const Index: React.FC<Props> = ({ store }) => {
     const getToDayHotBooks = () => {
         indexComponents?.hot_books(bookStore.workDirection)
     }
-    return <View style={{ display: "flex", flexFlow: 'column' }}>
-        {/* 轮播 */}
-        {indexConfig['banners'] && <View style={{ order: indexConfig['banners'].eq }}>
-            <BannerBox data={indexStore?.indexBanners || []} />
-        </View>}
-        {/* 今日热门 */}
-        {indexConfig['hot_books'] && <View style={{ order: indexConfig['banners'].eq }}>
-            <BookHead showBtn={indexStore?.indexHotBooks?.showRightButton} title={indexStore?.indexHotBooks?.name || "今日热书"} fitTitle="更多" imgUrl={require('../../icon/right.png')} fitOnBack={() => {
-                Taro.navigateTo({ url: `/pages/indexMore/index?title=今日热书&dataName=indexHotBooks` })
-            }}></BookHead>
-            <View ><BookboxRowMiddle {...indexStore?.indexHotBooks?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.[0]} /></View>
-            <View className='w row'>
-                {
-                    indexStore?.indexHotBooks?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.map((item, index) => {
-                        if (index > 0 && index < 5) {
+    // 重磅新书
+    const getNewBooks = () => {
+        indexComponents?.new_books(bookStore.workDirection)
+    }
+    // 经典
+    const getClassicBooks = () => {
+        indexComponents?.classic_books(bookStore.workDirection)
+    }
+    // 口碑
+    const getBestReviews = () => {
+        indexComponents?.best_reviews(bookStore.workDirection)
+    }
+    // 热门推荐
+    const getHotRec = () => {
+        indexComponents?.hot_rec(bookStore.workDirection)
+    }
+    // 必看
+    const getBestBooks = () => {
+        indexComponents?.best_books(bookStore.workDirection)
+    }
+    // 猜喜欢
+    const getGuessLike = (page) => {
+        indexComponents?.guess_like({ workDirection: bookStore.workDirection, ...page })
+    }
+    //下来加载
+    const load = async () => {
+        return new Promise((resolve, reject) => {
+            let { size, total, records } = indexStore?.indexGuessLike?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]
+            let pageSize = size + 20
+            if (records?.length >= total) {
+                Taro.showToast({
+                    title: '没有更多了~~',
+                    duration: 2000,
+                    icon: 'none'
+                })
+                reject()
+                return
+            } else {
+                getGuessLike({ pageSize, pageNum: 1 })
+                resolve(true)
+            }
+        })
+    }
+    return <ScrollViewHoc load={load} filterClassName='.searchTs' navHeight={indexStore.navHeight}>
+        <View style={{ display: "flex", flexFlow: 'column' }}>
+            {/* 轮播 */}
+            {indexConfig['banners'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BannerBox data={indexStore?.indexBanners || []} />
+            </View>}
+            {/* 今日热门 */}
+            {indexConfig['hot_books'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexHotBooks?.showRightButton} title={indexStore?.indexHotBooks?.name || "今日热书"} fitTitle="更多" imgUrl={require('../../icon/right.png')} fitOnBack={() => {
+                    Taro.navigateTo({ url: `/pages/indexMore/index?title=今日热书&dataName=indexHotBooks` })
+                }}></BookHead>
+                <View ><BookboxRowMiddle {...indexStore?.indexHotBooks?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.[0]} /></View>
+                <View className='w row'>
+                    {
+                        indexStore?.indexHotBooks?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.map((item, index) => {
+                            if (index > 0 && index < 5) {
+                                return <View key={index}><BookboxColumnSmall {...item} /></View>
+                            }
+                        })
+                    }
+                </View>
+            </View>}
+            {/* 热门分类 */}
+            {indexConfig['hot_category'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexHotCategory?.showRightButton} title={indexStore?.indexHotCategory?.name || "热门分类"} fitTitle="全部分类" imgUrl={require('../../icon/right.png')} fitOnBack={() => { Taro.switchTab({ url: '/pages/classify/index' }) }} />
+                <BookHotTabs hotValue={indexStore?.indexHotCategory?.bookCategoryList || []} onBack={(value) => {
+                    getHotBooks(value)
+                }} />
+                <View className='w row4'>
+                    {
+                        bookStore?.bookList?.records?.map((item, index) => {
                             return <View key={index}><BookboxColumnSmall {...item} /></View>
-                        }
-                    })
-                }
-            </View>
-        </View>}
-        {/* 热门分类 */}
-        {indexConfig['hot_category'] && <View style={{ order: indexConfig['banners'].eq }}>
-            <BookHead showBtn={indexStore?.indexHotCategory?.showRightButton} title={indexStore?.indexHotCategory?.name || "热门分类"} fitTitle="全部分类" imgUrl={require('../../icon/right.png')} fitOnBack={() => { Taro.switchTab({ url: '/pages/classify/index' }) }} />
-            <BookHotTabs hotValue={indexStore?.indexHotCategory?.bookCategoryList || []} onBack={(value) => {
-                getHotBooks(value)
-            }} />
-            <View className='w row4'>
-                {
-                    bookStore?.bookList?.records?.map((item, index) => {
-                        return <View key={index}><BookboxColumnSmall {...item} /></View>
-                    })
-                }
-            </View>
-        </View>}
-    </View>
+                        })
+                    }
+                </View>
+            </View>}
+            {/* 重磅新书 new_books*/}
+            {indexConfig['new_books'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexNewBooks?.showRightButton} title={indexStore?.indexNewBooks?.name || "重磅新书"} fitTitle="更多" imgUrl={require('../../icon/right.png')} fitOnBack={() => {
+                    Taro.navigateTo({ url: `/pages/indexMore/index?title=重磅新书&dataName=indexNewBooks` })
+                }} />
+                <View className='w row'>
+                    {
+                        indexStore?.indexNewBooks?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.map((item, index) => {
+                            if (index < 3) {
+                                return <View key={index}><BookboxColumnBig {...item} /></View>
+                            }
+                        })
+                    }
+                </View>
+            </View>}
+            {/* 热门推荐 hot_rec*/}
+            {indexConfig['hot_rec'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexHotRec?.showRightButton} title={indexStore?.indexHotRec?.name || "热门推荐"} fitTitle="更多" imgUrl={require('../../icon/right.png')} fitOnBack={() => {
+                    Taro.navigateTo({ url: `/pages/indexMore/index?title=热门推荐&dataName=indexHotRec` })
+                }} />
+                <View className='w row'>
+                    {
+                        indexStore?.indexHotRec?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.map((item, index) => {
+                            if (index < 3) {
+                                return <View key={index}><BookboxRowMiddle {...item} /></View>
+                            }
+                        })
+                    }
+                </View>
+            </View>}
+            {/* 口碑佳作 best_reviews*/}
+            {indexConfig['best_reviews'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexBestReviews?.showRightButton} title={indexStore?.indexBestReviews?.name || "口碑佳作"} fitTitle="更多" imgUrl={require('../../icon/right.png')} fitOnBack={() => {
+                    Taro.navigateTo({ url: `/pages/indexMore/index?title=口碑佳作&dataName=indexBestReviews` })
+                }} />
+                <View className='w row'>
+                    {
+                        indexStore?.indexBestReviews?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.map((item, index) => {
+                            if (index < 4) {
+                                return <View key={index}><BookboxColumnSmall {...item} /></View>
+                            }
+                        })
+                    }
+                </View>
+            </View>}
+            {/* 经典热书 classic_books*/}
+            {indexConfig['classic_books'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexClassicBooks?.showRightButton} title={indexStore?.indexClassicBooks?.name || "经典热书"} fitTitle="更多" imgUrl={require('../../icon/right.png')} fitOnBack={() => {
+                    Taro.navigateTo({ url: `/pages/indexMore/index?title=经典热书&dataName=indexClassicBooks` })
+                }} />
+                <View className='w row'>
+                    {
+                        indexStore?.indexClassicBooks?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.map((item, index) => {
+                            if (index < 8) {
+                                return <View key={index}><BookboxColumnSmall {...item} /></View>
+                            }
+                        })
+                    }
+                </View>
+            </View>}
+            {/* 必看好书 best_books*/}
+            {indexConfig['best_books'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexBestBooks?.showRightButton} title={indexStore?.indexBestBooks?.name || "必看好书"} fitTitle="更多" imgUrl={require('../../icon/right.png')} fitOnBack={() => {
+                    Taro.navigateTo({ url: `/pages/indexMore/index?title=必看好书&dataName=indexBestBooks` })
+                }} />
+                <View className='w row'>
+                    {
+                        indexStore?.indexBestBooks?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.map((item, index) => {
+                            if (index < 3) {
+                                return <View key={index}><BookboxRowMiddle {...item} /></View>
+                            }
+                        })
+                    }
+                </View>
+            </View>}
+            {/* 猜你喜欢 guess_like*/}
+            {indexConfig['guess_like'] && <View style={{ order: indexConfig['banners'].eq }}>
+                <BookHead showBtn={indexStore?.indexGuessLike?.showRightButton} title={indexStore?.indexGuessLike?.name || "猜你喜欢"} />
+                <View className='w row'>
+                    {
+                        indexStore?.indexGuessLike?.[app?.appInfo?.appCategory === 1 ? "longBookInfoAppVOS" : "shortBookInfoAppVOS"]?.records?.map((item, index) => {
+                            return <View key={index}><BookboxRowMiddle {...item} /></View>
+                        })
+                    }
+                </View>
+            </View>}
+        </View>
+    </ScrollViewHoc>
 };
 export default TopNavBar(inject('store')(observer(Index)), {
     tab: true,

+ 2 - 25
src/pages/my/index.tsx

@@ -1,13 +1,12 @@
-import { useEffect, useState } from 'react'
+import {  useState } from 'react'
 import Taro, { useDidHide } from '@tarojs/taro'
-import { View, Text, Image, Button, Navigator } from '@tarojs/components'
+import { View, Text, Image, Navigator } from '@tarojs/components'
 import { observer, inject } from 'mobx-react'
 import './index.less'
 import { Store } from '@src/app'
 import ModalStore from '@src/store/modalStore'
 import IosShowPay from '@src/components/pay/IosShowPay'
 import GlobalModal from '@src/components/bottomModal'
-import { setApp } from '@src/config'
 interface Props {
     store: Store;
 }
@@ -26,13 +25,8 @@ function My(props: Props) {
     useDidHide(() => {
         ModalStore.hideModal()
     });
-    // useEffect(()=>{
-    //     console.log("22222222222")
-    //     setApp({ token: "123", })//让token失效
-    // },[])
     return <View className='my'>
         <View className="userInfo">
-            {/* <Image src={require('../../icon/myBack.png')} /> */}
             <View className="userInfo_box">
                 {/* 个人信息 */}
                 <View className="top" >
@@ -53,23 +47,6 @@ function My(props: Props) {
                             }
                         </View>
                     </View>
-                    {
-                        // userInfoStore.isAuth && <View className="right">
-                        //     {
-                        //         userInfoStore.isAuth ?
-                        //             <Button onClick={() => { }} className="loginBt"  >
-                        //                 <Image lazy-load src={require('../../icon/loaginBt.png')} />
-                        //             </Button>
-                        //             : <View>
-                        //                 <Button openType='chooseAvatar' onChooseAvatar={() => { }} className="loginBt">
-                        //                     <Image lazy-load src={require('../../icon/loaginBt.png')} />
-                        //                 </Button>
-                        //                 {/* <Input type="nickname" placeholder="请输入昵称" /> */}
-                        //             </View>
-
-                        //     }
-                        // </View>
-                    }
                 </View>
                 {/* 付费功能 */}
                 <IosShowPay>

+ 146 - 1
src/server/index/index.ts

@@ -75,7 +75,152 @@ export function getShortHotCategory(workDirection) {
     })
 }
 /**
- * 获取短篇首页热门书籍列表
+ *  获取重磅新书 
+ * */
+export function getShortNewBooks(workDirection) {
+    return new Promise(async (resolve, reject) => {
+        try {
+            // 初始化
+            Taro.request({
+                url: '/app/appComponent/getNewBooks',
+                method: 'GET',
+                data: { workDirection },
+                success: (res) => {
+                    indexStore.setData({ indexNewBooks: res.data.data })
+                    resolve(res)
+                },
+                fail: (err) => {
+                    reject(err);
+                }
+            })
+        } catch (error) {
+            reject(error);
+        }
+    })
+}
+/**
+ *  获取热门推荐
+ * */
+export function getShortHotRec(workDirection) {
+    return new Promise(async (resolve, reject) => {
+        try {
+            // 初始化
+            Taro.request({
+                url: '/app/appComponent/getHotRec',
+                method: 'GET',
+                data: { workDirection },
+                success: (res) => {
+                    indexStore.setData({ indexHotRec: res.data.data })
+                    resolve(res)
+                },
+                fail: (err) => {
+                    reject(err);
+                }
+            })
+        } catch (error) {
+            reject(error);
+        }
+    })
+}
+/**
+ *  获取口碑佳作
+ * */
+export function getShortBestReviews(workDirection) {
+    return new Promise(async (resolve, reject) => {
+        try {
+            // 初始化
+            Taro.request({
+                url: '/app/appComponent/getBestReviews',
+                method: 'GET',
+                data: { workDirection },
+                success: (res) => {
+                    indexStore.setData({ indexBestReviews: res.data.data })
+                    resolve(res)
+                },
+                fail: (err) => {
+                    reject(err);
+                }
+            })
+        } catch (error) {
+            reject(error);
+        }
+    })
+}
+/**
+ *  获取经典热书
+ * */
+export function getShortClassicBooks(workDirection) {
+    return new Promise(async (resolve, reject) => {
+        try {
+            // 初始化
+            Taro.request({
+                url: '/app/appComponent/getClassicBooks',
+                method: 'GET',
+                data: { workDirection },
+                success: (res) => {
+                    indexStore.setData({ indexClassicBooks: res.data.data })
+                    resolve(res)
+                },
+                fail: (err) => {
+                    reject(err);
+                }
+            })
+        } catch (error) {
+            reject(error);
+        }
+    })
+}
+/**
+ *  获取必看
+ * */
+export function getShortBestBooks(workDirection) {
+    return new Promise(async (resolve, reject) => {
+        try {
+            // 初始化
+            Taro.request({
+                url: '/app/appComponent/getBestBooks',
+                method: 'GET',
+                data: { workDirection },
+                success: (res) => {
+                    indexStore.setData({ indexBestBooks: res.data.data })
+                    resolve(res)
+                },
+                fail: (err) => {
+                    reject(err);
+                }
+            })
+        } catch (error) {
+            reject(error);
+        }
+    })
+}
+/**
+ *  猜你喜欢
+ * */
+export function getShortGuessLike(data) {
+    return new Promise(async (resolve, reject) => {
+        try {
+            // 初始化
+            Taro.request({
+                url: '/app/appComponent/getGuessLike',
+                method: 'GET',
+                data,
+                success: (res) => {
+                    indexStore.setData({ indexGuessLike: res.data.data })
+                    resolve(res)
+                },
+                fail: (err) => {
+                    reject(err);
+                }
+            })
+        } catch (error) {
+            reject(error);
+        }
+    })
+}
+/**
+/**
+ *获取短篇首页热门书籍列表
  * */
 export function getShortHotBooks(workDirection) {
     return new Promise(async (resolve, reject) => {

+ 84 - 0
src/store/index.ts

@@ -29,6 +29,48 @@ export interface IndexStore {
         showRightButton: boolean,//右侧按钮是否展示
         workDirection: number,//频道
     },//首页热门分类
+    indexNewBooks:{
+        name: string,//名称
+        showRightButton: boolean,//右侧按钮是否展示
+        workDirection: number,//频道
+        longBookInfoAppVOS:any[] | null
+        shortBookInfoAppVOS:any[] | null,//书籍内容
+    },//重磅数据
+    indexHotRec:{
+        name: string,//名称
+        showRightButton: boolean,//右侧按钮是否展示
+        workDirection: number,//频道
+        longBookInfoAppVOS:any[] | null
+        shortBookInfoAppVOS:any[] | null,//书籍内容
+    },//热门推荐
+    indexBestReviews:{
+        name: string,//名称
+        showRightButton: boolean,//右侧按钮是否展示
+        workDirection: number,//频道
+        longBookInfoAppVOS:any[] | null
+        shortBookInfoAppVOS:any[] | null,//书籍内容
+    },//口碑
+    indexClassicBooks:{
+        name: string,//名称
+        showRightButton: boolean,//右侧按钮是否展示
+        workDirection: number,//频道
+        longBookInfoAppVOS:any[] | null
+        shortBookInfoAppVOS:any[] | null,//书籍内容
+    },//经典
+    indexBestBooks:{
+        name: string,//名称
+        showRightButton: boolean,//右侧按钮是否展示
+        workDirection: number,//频道
+        longBookInfoAppVOS:any[] | null
+        shortBookInfoAppVOS:any[] | null,//书籍内容
+    },//必看
+    indexGuessLike:{
+        name: string,//名称
+        showRightButton: boolean,//右侧按钮是否展示
+        workDirection: number,//频道
+        longBookInfoAppVOS:any | null
+        shortBookInfoAppVOS:any | null,//书籍内容
+    },//猜你喜欢
     indexCategoryId: number,//首页分类选中的id
     rechargeTemplate:any[],//充值模板数据
     setData: (data: { [key: string]: any }) => void,
@@ -54,6 +96,48 @@ const Index:IndexStore = observable({
         showRightButton: true,//右侧按钮是否展示
         workDirection: 0,//频道
     },//首页热门分类
+    indexNewBooks:{
+        name: "重磅新书",//名称
+        showRightButton: true,//右侧按钮是否展示
+        workDirection: 0,//频道
+        shortBookInfoAppVOS:null,//短篇
+        longBookInfoAppVOS:null,//长篇
+    },//重磅新书
+    indexHotRec:{
+        name: "热门推荐",//名称
+        showRightButton: true,//右侧按钮是否展示
+        workDirection: 0,//频道
+        shortBookInfoAppVOS:null,//短篇
+        longBookInfoAppVOS:null,//长篇
+    },//热门推荐
+    indexBestReviews:{
+        name: "口碑佳作",//名称
+        showRightButton: true,//右侧按钮是否展示
+        workDirection: 0,//频道
+        shortBookInfoAppVOS:null,//短篇
+        longBookInfoAppVOS:null,//长篇
+    },//口碑佳作
+    indexClassicBooks:{
+        name: "经典热书",//名称
+        showRightButton: true,//右侧按钮是否展示
+        workDirection: 0,//频道
+        shortBookInfoAppVOS:null,//短篇
+        longBookInfoAppVOS:null,//长篇
+    },//经典热书
+    indexBestBooks:{
+        name: "必看好书",//名称
+        showRightButton: true,//右侧按钮是否展示
+        workDirection: 0,//频道
+        shortBookInfoAppVOS:null,//短篇
+        longBookInfoAppVOS:null,//长篇
+    },//必看好书
+    indexGuessLike:{
+        name: "猜你喜欢",//名称
+        showRightButton: true,//右侧按钮是否展示
+        workDirection: 0,//频道
+        shortBookInfoAppVOS:null,//短篇
+        longBookInfoAppVOS:null,//长篇
+    },//猜你喜欢
     indexCategoryId: 0,
     isLogin:false,
     setData(data: { [key: string]: any }) {