uniapp 微信小程序页面JS模板

这段代码展示了一个Vue3 + uni-app的页面逻辑实现,主要功能包括:

页面初始化时检查登录状态、初始化默认数据和加载数据

处理页面显示时的重新加载逻辑

实现下拉刷新功能

通过API获取本地定时器数据

代码使用了Vue3的

javascript 复制代码
<script setup>
import { ref, reactive } from 'vue';
import { MyAPI } from '@/api/index.js';
import { onLoad, onPullDownRefresh, onShow } from '@dcloudio/uni-app';

onLoad(() => PageLogic.initPage());
onShow(() => PageLogic.pageShow());
onPullDownRefresh(() => PageLogic.pagePullDownRefresh());

const pageData = reactive();
class PageLogic {
    static initDefaultData = () => {};
    static initPage = () => {
        MyAPI.checkLogin();
        PageLogic.initDefaultData();
        PageLogic.reload();
    };
    static pageShow = () => {
        if (MyAPI.needReload()) {
            const funcName = MyAPI.getReloadFuncName();
            if (funcName === 'reload') {
                PageLogic.reload();
            }
        }
    };
    static pagePullDownRefresh = async () => {
        await MyAPI.doReload(PageLogic.reload);
    };
    static reload = () => {
        MyAPI.getDeviceAiSetting(MyAPI.getDeviceId())
            .then((res) => {
                pageData.value = res;
            })
            .catch((err) => {
                console.warn(err);
            });
    };
}
</script>
相关推荐
还是大剑师兰特3 小时前
Vue3 中的 defineExpose 完全指南
前端·javascript·vue.js
泯泷3 小时前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
2501_933907214 小时前
宁波小程序开发服务与技术团队专业支持
科技·微信小程序·小程序
华洛4 小时前
利好打工人,openclaw不是企业提效工具,而是个人助理
前端·javascript·产品经理
xkxnq4 小时前
第六阶段:Vue生态高级整合与优化(第93天)Element Plus进阶:自定义主题(变量覆盖)+ 全局配置与组件按需加载优化
前端·javascript·vue.js
A黄俊辉A5 小时前
vue css中 :global的使用
前端·javascript·vue.js
灵感__idea6 小时前
Hello 算法:复杂问题的应对策略
前端·javascript·算法
chushiyunen6 小时前
python中的内置属性 todo
开发语言·javascript·python
soso19687 小时前
JavaScript性能调优实战案例
javascript
Moment8 小时前
前端工程化 + AI 赋能,从需求到运维一条龙怎么搭 ❓❓❓
前端·javascript·面试