ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

【UniApp小程序知识点总结】API 请求到底该写在哪里?页面钩子 vs 组件内部

【UniApp小程序知识点总结】API 请求到底该写在哪里?页面钩子 vs 组件内部

一、 为什么有时候必须在页面生命周期中获取?

在 Uniapp 中,页面是路由的基本单位,也是小程序栈管理的核心。以下场景,请务必将请求逻辑写在页面层。

1. 只有页面能拿到“路由参数”

这是最硬核的技术原因。在 Uniapp 中,当我们跳转页面时携带参数(如 navigateTo({ url: '/pages/detail?id=123' })),这些参数只能在页面的 onLoad(options) 生命周期中获取到。

  • 场景:商品详情页、文章详情页、订单确认页。
  • 分析:如果你把获取数据的逻辑写在子组件里,组件是无法直接感知 URL 参数的。你不得不在页面 onLoad 拿到参数,再通过 props 传给组件。
  • 结论:对于强依赖路由 ID 的页面,在页面层(onLoad)获取数据是唯一顺畅的路径

2. 统一的 Loading 状态管理

小程序的用户体验往往依赖全局反馈。当用户进入一个页面时,通常期望看到一个统一的“加载中”提示(uni.showLoading)或骨架屏。

  • 场景:首屏数据填充。
  • 分析
    返回列表