uniapp 页面生命周期执行之前调用接口存token
时间: 2024-11-09 13:18:36 浏览: 6
C#微信开发之获取接口调用凭据
UniApp 中,页面生命周期执行之前通常是在 `onLoad` 或者 `onShow` 函数中调用接口,特别是在用户登录成功后存储 token。为了在页面加载前完成这个操作,你可以按照以下步骤操作:
1. **设置请求函数**:
创建一个异步函数,例如 `getToken()`,在这个函数中发送获取 token 的网络请求。
```javascript
async function getToken() {
try {
const response = await axios.get('你的API地址', { headers: {'Authorization': '你的token'} });
localStorage.setItem('token', response.data.token); // 存储 token 到本地
} catch (error) {
console.error('Failed to get token:', error);
}
}
```
2. **在生命周期钩子中调用接口**:
将这个函数放在页面的 `onLoad` 或 `onShow` 生命周期钩子里,确保在页面展示之前获取并存储 token。
```javascript
Page({
onLoad: async function () {
await getToken();
this.setData({ isTokenSet: true }); // 设置一个标志表示 token 已经准备好
},
onShow: async function () {
if (!this.data.isTokenSet) {
await getToken();
}
},
})
```
阅读全文