|
|
@@ -3,9 +3,9 @@
|
|
|
<van-list v-model="loading"
|
|
|
:finished="finished"
|
|
|
:immediate-check="false"
|
|
|
- :offset="100"
|
|
|
- @load="loadMore">
|
|
|
- <van-card v-for="(item, i) in items"
|
|
|
+ finished-text="没有更多了"
|
|
|
+ @load="getCollectList">
|
|
|
+ <van-card v-for="(item, i) in list"
|
|
|
:key="i"
|
|
|
:desc="item.brief"
|
|
|
:title="item.name"
|
|
|
@@ -21,29 +21,27 @@
|
|
|
</van-card>
|
|
|
</van-list>
|
|
|
|
|
|
- <is-empty v-if="items.length === 0">没有商品收藏</is-empty>
|
|
|
+ <is-empty v-if="list.length === 0">没有商品收藏</is-empty>
|
|
|
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import { collectList, collectAddOrDelete } from '@/api/api';
|
|
|
-
|
|
|
import IsEmpty from '@/components/is-empty/';
|
|
|
import { Card, Search, List } from 'vant';
|
|
|
-
|
|
|
-import loadMore from '@/mixin/list-load-more';
|
|
|
import scrollFixed from '@/mixin/scroll-fixed';
|
|
|
|
|
|
export default {
|
|
|
- mixins: [loadMore, scrollFixed],
|
|
|
+ mixins: [scrollFixed],
|
|
|
|
|
|
data() {
|
|
|
return {
|
|
|
- page: 1,
|
|
|
+ list: [],
|
|
|
+ page: 0,
|
|
|
limit: 10,
|
|
|
- total: 0,
|
|
|
- items: []
|
|
|
+ loading: false,
|
|
|
+ finished: false
|
|
|
};
|
|
|
},
|
|
|
|
|
|
@@ -53,17 +51,22 @@ export default {
|
|
|
|
|
|
methods: {
|
|
|
init() {
|
|
|
+ this.page = 0;
|
|
|
+ this.list = [];
|
|
|
+ this.getCollectList()
|
|
|
+ },
|
|
|
+ getCollectList() {
|
|
|
+ this.page++;
|
|
|
collectList({ type: 0, page: this.page, limit: this.limit }).then(res => {
|
|
|
- this.page = res.data.data.page;
|
|
|
- this.limit = res.data.data.limit;
|
|
|
- this.total = res.data.data.total;
|
|
|
- this.items.push(...res.data.data.list);
|
|
|
+ this.list.push(...res.data.data.list);
|
|
|
+ this.loading = false;
|
|
|
+ this.finished = res.data.data.page >= res.data.data.pages;
|
|
|
});
|
|
|
},
|
|
|
cancelCollect(event, i, item) {
|
|
|
this.$dialog.confirm({ message: '是否取消收藏该商品' }).then(() => {
|
|
|
collectAddOrDelete({ valueId: item.valueId, type: 0 }).then(res => {
|
|
|
- this.items.splice(i, 1);
|
|
|
+ this.list.splice(i, 1);
|
|
|
});
|
|
|
});
|
|
|
},
|