3
0

custom-refresher.vue 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <!-- z-paging自定义的下拉刷新view -->
  2. <template>
  3. <view class="refresher-container">
  4. <!-- 这里的图片请换成自己项目的图片 -->
  5. <image class="refresher-image" mode="aspectFit" src="@/static/images/logo.png"></image>
  6. <text class="refresher-text">{{statusText}}</text>
  7. </view>
  8. </template>
  9. <script>
  10. export default {
  11. data() {
  12. return {
  13. };
  14. },
  15. computed: {
  16. statusText() {
  17. // 这里可以做i18n国际化相关操作,可以通过uni.getLocale()获取当前语言(具体操作见i18n-demo.vue);
  18. // 获取到当前语言之后,就可以自定义不同语言下的展示内容了
  19. const statusTextArr = ['哎呀,用点力继续下拉!', '松手刷新~~', '正在努力刷新中...', '刷新成功啦~'];
  20. return statusTextArr[this.status];
  21. }
  22. },
  23. props: {
  24. status: {
  25. type: Number,
  26. default: function() {
  27. return 0;
  28. },
  29. },
  30. }
  31. }
  32. </script>
  33. <style scoped>
  34. .refresher-container {
  35. /* #ifndef APP-NVUE */
  36. display: flex;
  37. /* #endif */
  38. height: 150rpx;
  39. flex-direction: column;
  40. align-items: center;
  41. justify-content: center;
  42. }
  43. .refresher-image {
  44. margin-top: 10rpx;
  45. height: 45px;
  46. width: 45px;
  47. }
  48. .refresher-text {
  49. margin-top: 10rpx;
  50. font-size: 24rpx;
  51. color: #666666;
  52. }
  53. </style>