| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <template>
- <view>
- <!-- 订阅列表 -->
- <uni-list>
- <uni-list-item v-for="(item, index) in subscriptionSourceList" :key="item.id" :title="item.title"
- :note="item.subTitle" :rightText="item.paidOption == 'PAID' ? '付费' : '免费'" link :clickable="true"
- @click="goSubscriptionSourceDetail(item)" />
- </uni-list>
- <uni-load-more status="no-more" v-if="!subscriptionSourceList || subscriptionSourceList.length == 0" />
- </view>
- </template>
- <script setup>
- import { ref } from 'vue';
- import { onPullDownRefresh, onShow } from "@dcloudio/uni-app";
- import { subscriptionApi } from '@/apis/apis.js';
- import router from '@/common/router.js';
- // 属性
- /**
- * 订阅源列表
- */
- const subscriptionSourceList = ref([]);
- // 方法
- /**
- * 加载数据
- */
- const loadData = async () => {
- subscriptionSourceList.value = await subscriptionApi.querySubscriptionSource();
- };
- /**
- * 跳转到订阅源详情页面
- */
- const goSubscriptionSourceDetail = (dataObj) => {
- uni.navigateTo({
- url: router.SUBSCRIPTION_SOURCE_DETAIL_PAGE + `?id=${dataObj.id}`
- });
- };
- // 生命周期
- onShow(() => {
- loadData();
- });
- onPullDownRefresh(() => {
- loadData();
- uni.stopPullDownRefresh();
- });
- </script>
- <style lang="scss" scoped></style>
|