V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  SHF  ›  全部回复第 6 页 / 共 10 页
回复总数  181
1  2  3  4  5  6  7  8  9  10  
```ts
export function useValueWithKey<T> (initialState: T, key: string) {
const [_, setValue] = useState<T>(initialState)

useEffect(() => {
// init value(if not set by another component)
mkv.init(key, initialState)
const handleChange = () => {
setValue(mkv.get(key))
}
eb.on(`__CHANGED__${key}`, handleChange)
handleChange()
return () => {
eb.off(`__CHANGED__${key}`, handleChange)
}
}, [ ])

return {
set value (newValue: T) {
mkv.set(key, newValue)
eb.emit(`__CHANGED__${key}`)
setValue(newValue)
},
get value (): T {
return mkv.get(key) ?? initialState
}
}
}
```

useEffect 里面直接调用了 handleChange, 里面执行 setValue 会导致组件挂载之后因为 state 变了又重新 render ,不太好
你试试在组件里面 console.log('render') 看看渲染了几次
https://github.com/ShenHongFei/react-object-model

我这个状态管理库也很简单,在组件里通过

const { name, age } = user.use(['name', 'age'])

订阅对象的属性,在属性改变时 diff, 重新渲染
300 天前
回复了 Simcentric 创建的主题 推广 折腾了个新界面,大家看下,一手资源哈
导航栏从顶上悬下来一截好难受
300 天前
回复了 NoobNoob030 创建的主题 程序员 内网穿透被网警打电话了
@proxytoworld 学到了,tls 确实有指纹,把 SSLVersion,Cipher,SSLExtension,EllipticCurve,EllipticCurvePointFormat 按顺序排列然后计算 hash 值,便可得到一个客户端的 TLS FingerPrint ( https://ares-x.com/2021/04/18/SSL-%E6%8C%87%E7%BA%B9%E8%AF%86%E5%88%AB%E5%92%8C%E7%BB%95%E8%BF%87/)

但是这种指纹应该是 go 语言编写的应用程序的通用的指纹吧,很难精准定位是 frp 的

另外一个方案是改一下协议,用 quic 会不会好一点,没有 tls 层,而且协议比较新,有可能指纹探测还没开发出来?
301 天前
回复了 NoobNoob030 创建的主题 程序员 内网穿透被网警打电话了
看来需要升级下 frp 版本并修改配置

https://github.com/fatedier/frp/issues/3439
https://github.com/fatedier/frp/issues/3193

先 tls 连接,加密,然后再干别的,你又如何嗅探?
302 天前
回复了 bjzhou1990 创建的主题 Windows 因为一个文件夹名字,电脑死机了
这是什么历史遗留问题吗?
头铁,目前还不开,再观望观望,我觉得还是密码比较香
302 天前
回复了 justicelove 创建的主题 Windows 快捷键求助
autohotkey 你值得拥有,我一般把 CapsLock & j,k,h,l 设置为 上下左右,充分利用 CapsLock 键
其实自己用 vscode 提供的 api 去实现一些小功能,比如按某个快捷键做一些操作,能更好的理解插件的工作原理也更有意思。还能实现一些符合你自己的需求,有成就感。
推荐我自己用的红米 K60 Pro, 2K 分辨率直屏,120W 有线充电,30W 无线充电,12G + 256G 4000 左右,太香了
325 天前
回复了 besscroft 创建的主题 分享创造 DiyFile 一款好看的在线文件列表程序
我也写了一个网盘,主要用来分享平时打羽毛球录的视频 @Zenyet @besscroft
https://shenhongfei.com/files/
同一局域网下面电脑是没问题的,确实是手机问题,得研究研究路由表
可能是 VPN 把系统路由表搞坏了
我也遇到过,开一下飞行模式再关掉就好了,我感觉可能和 clash 的那个 VPN 有点关系
327 天前
回复了 aquman888 创建的主题 iPhone 大家拍摄的照片用什么工具同步到电脑里?
android root 之后直接 rsync
2023-05-16 10:35:28 +08:00
回复了 lrwlf 创建的主题 Android 2023 安卓手机求推荐!
红米 K60 Pro, 我用的也是这个,真不错
2023-05-15 00:42:36 +08:00
回复了 ql562482472 创建的主题 路由器 2023 年 5 月,有推荐的路由器选择吗?
小米 7000 ,刚出的,已入手,4 个 2.5G 口,未来可能支持 wifi 7
2023-05-09 01:04:37 +08:00
回复了 busier 创建的主题 宽带症候群 开 IPv4/IPv6 双栈后,明显变慢!
手机上用 clash 可能会影响 ipv6 ,有几次我连了 wifi 之后 ipv6 就不通了,需要先忘记无线网络再重连才能用,不知道是什么原因,再观察观察
2023-05-09 01:03:16 +08:00
回复了 busier 创建的主题 宽带症候群 开 IPv4/IPv6 双栈后,明显变慢!
我开了 ipv6, 手动在手机和电脑上设置了 mtu 为 1492, 打开网页飞快,测速 1000M 不到一点
2023-05-07 23:51:24 +08:00
回复了 dangyuluo 创建的主题 SSD 国产 NVMEe 硬盘质量如何?
一周前刚入手长江存储的致态 7100, 目前用着还不错
![zhitai-7100.png]( https://cdn.shenhongfei.com/assets/zhitai-7100.png)
1  2  3  4  5  6  7  8  9  10  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4127 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 36ms · UTC 01:04 · PVG 09:04 · LAX 18:04 · JFK 21:04
Developed with CodeLauncher
♥ Do have faith in what you're doing.