V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  EasilyJS  ›  全部回复第 1 页 / 共 1 页
回复总数  5
2023-05-30 15:43:47 +08:00
回复了 EasilyJS 创建的主题 分享创造 [TS] 分享一个类型支持非常完善的 object path package
@codehz 看了下 hookstate 的示例,用 proxy 确实可以实现,但感觉稍微有点 hack (虽然 Mobx 也是类似原理),而且这样的话不太容易和其他第三方库兼容,比如我需要配合 yup 验证库,去标记错误状态,yup 只会给一个 error 的 path 数组
2023-05-30 15:10:34 +08:00
回复了 EasilyJS 创建的主题 分享创造 [TS] 分享一个类型支持非常完善的 object path package
@Leviathann 我试了下你提到的 type-fest 的 Get ,目前只能通过 path 拿到 value ,并不支持生成 path ,另外没有包含 path get/set 的实现,感觉使用场景比较局限
2023-05-30 15:08:25 +08:00
回复了 EasilyJS 创建的主题 分享创造 [TS] 分享一个类型支持非常完善的 object path package
@codehz 确实目前一些特殊字符不是特别好处理,只能是避免使用,比较好奇如果是 <input {...bind(state.object.array[1].value)} 这种方式,确实能比较好的设置 value ,但是 onChange 回调的时候,如何把值设置回去呢?
2023-05-30 14:38:06 +08:00
回复了 EasilyJS 创建的主题 分享创造 [TS] 分享一个类型支持非常完善的 object path package
@codehz 目前我 object path 使用最多的场景是 form 表单的构建,针对那些特别复杂的表单需要拆分成若干层级的子组件,每个子组件使用的整个 form 状态的部分 path ,为了保持 form 的健壮性,需要对 path 进行强约束,避免手误导致意料之外的 bug ,如果 form 状态调整了,也可以针对 ts 报错的子组件进行快速调整。
2023-05-29 21:05:05 +08:00
回复了 EasilyJS 创建的主题 分享创造 [TS] 分享一个类型支持非常完善的 object path package
没试过 benchmark ,要找一些有没有相关工具,不过我试了一些比较复杂的数据结构,感觉推断速度还是比较快的
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3102 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 12ms · UTC 11:24 · PVG 19:24 · LAX 04:24 · JFK 07:24
Developed with CodeLauncher
♥ Do have faith in what you're doing.