Commit 91a524ebea350bd43f59725e352723313871c0f9
1 parent
745a895f
组件优化
Showing
3 changed files
with
34 additions
and
49 deletions
src/components/dresserList/dresserList.vue
| 1 | 1 | <template> |
| 2 | 2 | <div> |
| 3 | - <div class="item_box" @click="toDetail(dresserList)"> | |
| 4 | - <img class="head_portrait" v-lazy="dresserList.user_img" /> | |
| 3 | + <div class="item_box" v-for="(item,index) in dresserList" @click="toDetail(item)"> | |
| 4 | + <img class="head_portrait" v-lazy="item.user_img || item.logo" /> | |
| 5 | 5 | <div class="user_info"> |
| 6 | 6 | <div class="name"> |
| 7 | - {{dresserList.title}} | |
| 7 | + {{item.title}} | |
| 8 | 8 | </div> |
| 9 | 9 | <div class="desc"> |
| 10 | - {{dresserList.user_title}} | |
| 10 | + {{item.user_title || item.titles}} | |
| 11 | 11 | </div> |
| 12 | 12 | </div> |
| 13 | 13 | <img class="arrow_right" src="static/img/icon_arrow_right.png" /> | ... | ... |
src/pages/fansShopMessageList/fansShopMessageList.vue
| ... | ... | @@ -11,18 +11,15 @@ |
| 11 | 11 | |
| 12 | 12 | <!-- 已关注达人列表 --> |
| 13 | 13 | <div class="item_box"> |
| 14 | - <ul | |
| 14 | + <div | |
| 15 | 15 | v-infinite-scroll="loadMore" |
| 16 | 16 | infinite-scroll-disabled="loading" |
| 17 | 17 | :infinite-scroll-distance="list.length"> |
| 18 | - <li v-for="(item, index) in list" :key="index"> | |
| 19 | - | |
| 20 | 18 | <!-- 达人列表组件 --> |
| 21 | 19 | <dresserList @toDetail="toDetail" |
| 22 | - :dresserList="item"> | |
| 20 | + :dresserList="list"> | |
| 23 | 21 | </dresserList> |
| 24 | - </li> | |
| 25 | - </ul> | |
| 22 | + </div> | |
| 26 | 23 | </div> |
| 27 | 24 | <!-- </van-pull-refresh> --> |
| 28 | 25 | </div> | ... | ... |
src/pages/recommendMore/recommendMore.vue
| ... | ... | @@ -11,18 +11,16 @@ |
| 11 | 11 | |
| 12 | 12 | <!-- 已关注达人列表 --> |
| 13 | 13 | <div class="item_box"> |
| 14 | - <ul | |
| 15 | - v-infinite-scroll="loadMore" | |
| 14 | + <div | |
| 15 | + infinite-scroll-immediate-check="true" | |
| 16 | + v-infinite-scroll="recommendMore" | |
| 16 | 17 | infinite-scroll-disabled="loading" |
| 17 | - :infinite-scroll-distance="list.length"> | |
| 18 | - <li v-for="(item, index) in list" :key="index"> | |
| 19 | - | |
| 18 | + :infinite-scroll-distance="50"> | |
| 20 | 19 | <!-- 达人列表组件 --> |
| 21 | 20 | <dresserList @toDetail="toDetail" |
| 22 | - :dresserList="item"> | |
| 21 | + :dresserList="list"> | |
| 23 | 22 | </dresserList> |
| 24 | - </li> | |
| 25 | - </ul> | |
| 23 | + </div> | |
| 26 | 24 | </div> |
| 27 | 25 | <!-- </van-pull-refresh> --> |
| 28 | 26 | </div> |
| ... | ... | @@ -39,7 +37,6 @@ |
| 39 | 37 | data() { |
| 40 | 38 | return { |
| 41 | 39 | title: "", |
| 42 | - isLoading: false, // 下拉刷新控制 | |
| 43 | 40 | backs: { // nav导航条数据 |
| 44 | 41 | title: "已关注达人", |
| 45 | 42 | funcs: { |
| ... | ... | @@ -48,8 +45,9 @@ |
| 48 | 45 | } |
| 49 | 46 | } |
| 50 | 47 | }, |
| 51 | - list: [], // 达人列表 | |
| 52 | - loading: false // 上拉加载控制 | |
| 48 | + list: null, // 达人列表 | |
| 49 | + loading: false, // 上拉加载控制 | |
| 50 | + pages:0, // 分页 | |
| 53 | 51 | } |
| 54 | 52 | }, |
| 55 | 53 | components: { |
| ... | ... | @@ -59,10 +57,10 @@ |
| 59 | 57 | created() { |
| 60 | 58 | |
| 61 | 59 | // 设置标题 |
| 62 | - this.$set(this, "title", "已关注达人"); | |
| 63 | - | |
| 64 | - // 获取关注人列表 | |
| 65 | - this.fansShopMessageList(); | |
| 60 | + this.$set(this, "title", "推荐达人页"); | |
| 61 | + document.title = "推荐达人页" | |
| 62 | + // 获取更多的推荐达人 | |
| 63 | + this.recommendMore(); | |
| 66 | 64 | }, |
| 67 | 65 | methods: { |
| 68 | 66 | |
| ... | ... | @@ -79,18 +77,20 @@ |
| 79 | 77 | /** |
| 80 | 78 | * 已关注达人列表 |
| 81 | 79 | */ |
| 82 | - fansShopMessageList () { | |
| 80 | + recommendMore () { | |
| 83 | 81 | |
| 84 | 82 | // 校验登录 |
| 85 | 83 | if (this.$parent.checkLogin()) { |
| 86 | - | |
| 84 | + this.loading = true; | |
| 85 | + this.pages++ | |
| 87 | 86 | // 加载中提示 |
| 88 | - Indicator.open('加载中...'); | |
| 87 | + Indicator.open("加载中..."); | |
| 89 | 88 | |
| 90 | 89 | // 请求接口 |
| 91 | - this.http("/Api/" + this.getApiVersion().dynamic + "/fansShopMessageList", { | |
| 92 | - uid: this.getStore("uid") | |
| 93 | - },this.fansShopMessageListCallback, { | |
| 90 | + this.http("/Api/" + this.getApiVersion().dynamic + "/hotDarenList", { | |
| 91 | + uid: this.getStore("uid"), | |
| 92 | + page: this.pages | |
| 93 | + },this.recommendMoreCallback, { | |
| 94 | 94 | method: "post" |
| 95 | 95 | }); |
| 96 | 96 | } |
| ... | ... | @@ -101,7 +101,7 @@ |
| 101 | 101 | * @param {object} res [服务器返回数据] |
| 102 | 102 | * @param {object} ext [扩展参数] |
| 103 | 103 | */ |
| 104 | - fansShopMessageListCallback(res, ext) { | |
| 104 | + recommendMoreCallback(res, ext) { | |
| 105 | 105 | |
| 106 | 106 | // 加载完成 |
| 107 | 107 | Indicator.close(); |
| ... | ... | @@ -116,27 +116,15 @@ |
| 116 | 116 | let {data: datas} = res; |
| 117 | 117 | |
| 118 | 118 | /*获取裂变数据*/ |
| 119 | - | |
| 120 | - // 设置标题 | |
| 121 | - this.$set(this, "list", datas.list); | |
| 119 | + if (datas.list && datas.list.length) { | |
| 120 | + // 隐藏加载圈 | |
| 121 | + this.loading = false; | |
| 122 | + this.$set(this, "list", datas.list); | |
| 123 | + } | |
| 122 | 124 | } |
| 123 | 125 | }, |
| 124 | 126 | |
| 125 | 127 | /** |
| 126 | - * 上拉加载 | |
| 127 | - */ | |
| 128 | - loadMore() { | |
| 129 | - // this.loading = true; | |
| 130 | - // setTimeout(() => { | |
| 131 | - // let last = this.list[this.list.length - 1]; | |
| 132 | - // for (let i = 1; i <= 10; i++) { | |
| 133 | - // this.list.push(last + i); | |
| 134 | - // } | |
| 135 | - // this.loading = false; | |
| 136 | - // }, 2500); | |
| 137 | - }, | |
| 138 | - | |
| 139 | - /** | |
| 140 | 128 | * 通用跳转 |
| 141 | 129 | * @param {object} item [数据对象] |
| 142 | 130 | */ | ... | ... |