like.html 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. {extend name="public/base"/}
  2. {block name="css"}
  3. <style>
  4. .van-nav-bar__text, .van-nav-bar .van-icon{
  5. color:white;
  6. }
  7. </style>
  8. {/block}
  9. {block name="body"}
  10. <van-nav-bar
  11. class="bg-blue"
  12. fixed="true"
  13. left-text="返回"
  14. left-arrow
  15. @click-left="onBack"
  16. >
  17. <template #title>
  18. <span class="text-white">我的收藏</span>
  19. </template>
  20. </van-nav-bar>
  21. <div style="width:100%;height:46px;"></div>
  22. <van-pull-refresh v-model="refreshing" @refresh="onRefresh">
  23. <van-list
  24. v-model="loading"
  25. :finished="finished"
  26. finished-text="没有更多了"
  27. @load="onLoad"
  28. >
  29. <like-list :list="list" @cancel="onCancel"></like-list>
  30. </van-list>
  31. </van-pull-refresh>
  32. {/block}
  33. {block name="script"}
  34. <script src="__MJS__/component/likeList.js"></script>
  35. <script>
  36. new Vue({
  37. el: '#app',
  38. data() {
  39. return {
  40. list: [],
  41. page: 1,
  42. loading: false,
  43. finished: false,
  44. refreshing: false,
  45. };
  46. },
  47. methods: {
  48. onBack() {
  49. history.back();
  50. },
  51. onCancel(id) {
  52. let _this = this;
  53. $.post("{:url('/my/likeCancel')}",{id:id},function (json) {
  54. if (json.code == 0) {
  55. _this.onRefresh();
  56. } else {
  57. _this.$toast(json.msg)
  58. }
  59. },'json');
  60. },
  61. //加载
  62. onLoad() {
  63. //参数
  64. let self = this;
  65. let param = {page: this.page};
  66. this.page++;
  67. $.post("{:url('/my/listLike')}", param, function (json) {
  68. //下拉刷新
  69. if (self.refreshing) {
  70. self.refreshing = false;
  71. }
  72. // 加载状态结束
  73. self.loading = false;
  74. if (json.data.length == 0) {
  75. // 数据全部加载完成
  76. self.finished = true;
  77. } else {
  78. // 增加数据
  79. for (let i = 0; i < json.data.length; i++) {
  80. self.list.push(json.data[i]);
  81. }
  82. }
  83. }, 'json');
  84. },
  85. onRefresh() {
  86. // 清空列表数据
  87. this.list = [];
  88. this.page = 1;
  89. this.loading = true;
  90. this.finished = false;
  91. this.onLoad();
  92. },
  93. },
  94. });
  95. </script>
  96. {/block}