V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  googleaccount  ›  全部回复第 14 页 / 共 30 页
回复总数  598
1 ... 10  11  12  13  14  15  16  17  18  19 ... 30  
@googleaccount 咋格式呢
```javascript
const subscriptionRef = useRef(null);

useEffeect(() => {
...
if (subscriptionRef.current) {
subscriptionRef.current.unsubscribe();
}
...
subscriptionRef.current = timer()
...
return () => {
subscriptionRef.current.unsubscribe();
};
}, [refresh_token]);
```
我没测试上面这些代码,还一个简单粗暴的办法就是把定时器存在 ref 上 就不会出现这些问题了。
```js
const subscriptionRef = useRef(null);

useEffeect(() => {
...
if (subscriptionRef.current) {
subscriptionRef.current.unsubscribe();
}
...
subscriptionRef.current = timer()
...
}, [refresh_token]);
return () => {
subscriptionRef.current.unsubscribe();
};
})
```
```js
export function RefreshTokenComp({
refreshTokenActor,
}: {
refreshTokenActor: RequestActor<{
refreshToken: string;
}>;
}) {
const [access$, updateAccess] = useAccessMgr();
const access = useObservable(access$) || {};
const { refresh_token, expireAt } = access;
let sub:Timer
const [refreshTokenRequest] = useRequest(refreshTokenActor, {
onSuccess({ arg }) {
updateAccess(fromOAuthToken(arg.data));
},
});

useEffect(() => {
if (!refresh_token) return;
if (sub) sub.unsubscribe();
const expiresIn = moment(expireAt).diff(moment(), "s") - 120; // token 过期前二分钟左右刷新
sub = timer(expiresIn * 1000).subscribe(() => {
refreshTokenRequest({ refreshToken: refresh_token });
});
return () => {
sub.unsubscribe();
};
}, [refresh_token]);

return null;
}
``` 试试这样
你这个 refresh_token 每隔两分钟就会变 说明 useEffect 里面的定时器每隔两分钟就会执行一次 执行多了不就爆了没,每次执行前清空一下就好了
追求数据实时性 考虑用 websocket ?
2024-05-14 11:26:50 +08:00
回复了 liv22 创建的主题 长沙 120w 是买长沙还是广州?
120w 全款只能去三四线城市买吧
2024-05-13 10:27:50 +08:00
回复了 buyerhou 创建的主题 生活 停车位买卖问题
现在是买方市场 就等租客走了再买 他爱卖不卖吧 车位亏多很正常 开发商卖几年没卖完没五折出售呢。
2024-05-07 17:59:48 +08:00
回复了 746970179 创建的主题 Tesla 最近特斯拉的事故, 为什么又没有行车记录视频?
8 成是司机操作失误 踩错了油门之类 2 成可能是车内夫妻闹矛盾导致车辆失控。
很多人以几十年老司机为借口说啥不可能踩错,殊不知越这样说司机问题越大, 就前几天有个大妈开儿子的特斯拉操作失误在空中翻转几圈的 一开始他儿子群里说的就是刹车失灵 他妈几十年驾龄不会踩错。好在她妈没出事 调查结果出来就是操作失误了,想想如果真出事了 死无对证 家属又得赖特斯拉刹车失灵了。。。
2024-04-30 09:46:40 +08:00
回复了 nelhu 创建的主题 生活 手头有 20w,先还房贷还是先还信用贷? [急]
20 万 其实对房贷没啥影响 月供少不了多少钱 不如先把信用贷早点还了 少一个还款日
2024-04-26 17:04:48 +08:00
回复了 cslive 创建的主题 问与答 有没有试过穿五趾袜的
我感觉可以解决我经常左右两只穿错的问题
2024-04-26 16:58:38 +08:00
回复了 awolfer 创建的主题 汽车 准备卖掉雅阁,换电车,有什么建议吗?
@SuperLino https://space.bilibili.com/24142770 应该说的是这位大佬吧 一辆 86 一辆 id3
2024-04-26 16:56:06 +08:00
回复了 awolfer 创建的主题 汽车 准备卖掉雅阁,换电车,有什么建议吗?
油费肯定不是理由啊 你这一来一回可能还得多花钱 体验升级也并不大。我是阿特兹车主 现在每周加一次油 也很肉疼 前段时间订了 su7 max 打算后面看情况要不要把阿特兹卖了 纯粹是想趁 30 岁再激情驾驶一把 后面可能就不会再买运动轿车了。
所以我的建议就是要么就先别换,如果真想省钱 就直接换个更便宜的 798 啥的,要么就再加点钱换个体验更好的
2024-04-24 15:18:09 +08:00
回复了 xiaocongcong1 创建的主题 淘宝 大家来吐槽下淘宝网页版
阿里现在要做的是怎么说服那些流失的用户用回淘宝。我已经很多年没用过淘宝了
明前龙井 安吉白茶 凤凰单枞 武夷山红茶。我的茶柜里有这几种茶叶 换着喝
2024-04-23 09:38:40 +08:00
回复了 xiaopanglian 创建的主题 设计 一个好的简约博客大概是什么样的呢?
https://www.dyy.im/ 又开始了吗
2024-04-22 15:51:38 +08:00
回复了 cat9life 创建的主题 生活 莫名其妙的网络热点,例如长城炮
一开始觉得是有点反差 很多民间的皮卡车主跟风发视频, 后面就是官方下场炒作了
1 ... 10  11  12  13  14  15  16  17  18  19 ... 30  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5772 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 39ms · UTC 06:20 · PVG 14:20 · LAX 22:20 · JFK 01:20
♥ Do have faith in what you're doing.