V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  TWorldIsNButThis  ›  全部回复第 21 页 / 共 21 页
回复总数  415
1 ... 12  13  14  15  16  17  18  19  20  21  
@Charrlles 感谢 今天试了下的确解决了
2022-03-24 14:53:43 +08:00
回复了 cutemurphy2888 创建的主题 JavaScript 一个 setter 死循环错误·
@cutemurphy2888 kotlin 没有 java 或者 js 里的字段,
只有 property 的概念,property 是否对应一个真正的字段是编译器判断
2022-03-19 14:09:27 +08:00
回复了 cxsz 创建的主题 Java 被怼的莫名奇妙的,这么写会出空指针?
可以包一层 optional
@dablwow 是 demo 里的吗
我后来找了个控制下拉高度的属性 在 ondragstart 的时候设为 0 就可以避免下拉
但是 swiper 的左右滑动靠在 ondragstart 的时候设置 allow touch move 为 false 就不行
2022-03-15 19:02:02 +08:00
回复了 TWorldIsNButThis 创建的主题 前端开发 react 的请求+缓存库 swr 的正确使用姿势?
@knives dependent 官网也是一句话就没了,就说通过 getKey 的函数返回 falsy 值或者抛异常可以实现先获取 a 在获取 b ,但是完全没讲更新的事情

比如更新 id list 以后,id list 可能变可能不变,不变的情况下依然要更新 id 对应的 item ,这个是否是通过 onSuccess 手动触发 dependency 的更新?

想实现的效果是进来获取一次 id list 一次 item ,更新也是只请求一次 id list 和对应的 items
2022-03-14 14:10:14 +08:00
回复了 devcat9 创建的主题 React 2022 年,推荐的 React 状态管理框架是?
@ospider
@maichael
老哥们能否帮忙看下 swr 的这个问题 感谢
https://www.v2ex.com/t/839773
2022-03-14 02:58:12 +08:00
回复了 leavelet 创建的主题 Rust Rust 的实际应用场景有哪些?哪些公司或组织在用?
一些前端工具链都在用 rust 写
2022-03-13 20:43:54 +08:00
回复了 TWorldIsNButThis 创建的主题 前端开发 react 的请求+缓存库 swr 的正确使用姿势?
@HeStudy useRequest 的话是用 refreshDeps 解决吗 我再研究一下
2022-03-13 18:55:31 +08:00
回复了 TWorldIsNButThis 创建的主题 前端开发 react 的请求+缓存库 swr 的正确使用姿势?
const useData = () => {
const {
data: ids,
isValidating: updateId,
mutate: mutateId,
} = useSwr('/api/ids', fetchId, {
onSuccess: async () => {
await mutateData()
},
})
const { data, mutate: mutateData, isValidating: updateData } = useSwr(() => ids, fetchData)

return {
ids,
data,
mutateData,
mutateId,
updateData,
updateId,
}
}

又换了个写法,现在请求次数就是 id 和 data 各一次了
感觉好像 dependent query 没必要保持 key 不变,但是在 id 的 onSucess 里刷新它的 dependent query 好像也有点怪。。
2022-03-12 00:56:27 +08:00
回复了 TWorldIsNButThis 创建的主题 前端开发 react 的请求+缓存库 swr 的正确使用姿势?
但是这样写第一次渲染的时候一定会请求两次 id ,有什么方法优化吗

另外如果用 react query 实现相同的功能会不会简单些?
2022-03-11 23:50:12 +08:00
回复了 TWorldIsNButThis 创建的主题 前端开发 react 的请求+缓存库 swr 的正确使用姿势?
const fetchId = async () => {
await new Promise((res) => setTimeout(res, 1000))
const millis = new Date().getMilliseconds().toString()
return millis
.substring(millis.length - 4)
.split('')
.map(Number)
}

const fetchData = async (ids: number[]) => {
await new Promise((res) => setTimeout(res, 1000))
return await Promise.all(ids.map((id) => new Promise((res) => res(`data-${id}`))))
}

const useData = () => {
const { data: ids, isValidating: updateId, mutate: mutateId } = useSwr('/api/ids', fetchId)
const {
data,
mutate: mutateData,
isValidating: updateData,
} = useSwr(ids && 'data', async () => {
return await fetchData((await mutateId()) || [])
})

return {
ids,
data,
mutateData,
mutateId,
updateData,
updateId,
}
}

好像找到一个解决方案,在 dependent query 里 mutate id ,根据返回的 id 再去请求,由于 swr 在短时间内多次调用只会发一次请求,所以最终也就发两次请求?但是不知道这算不算 anti-pattern ?
@murmur ...就是可能继续有嵌套的 if(b) if(c) if(d)

@dcsuibian
@leopod1995 这个只能取值,不能作为参数,或者说不能 mapping 成新值


@IvanLi127 kotlin 的有 scope function ,

if (a) {
const b = doSth(a)
if (b) {
...
}
}
return yyy

可以变成 a?.let { doSth(it) }?.let { doOtherThing(it) } ?: yyy 第一个 it 就是不为 null 的 a ,第二个 it 就是不为 null 的 b

@intmax2147483647
@noe132 fp-ts 看过,但是概念太多了,感觉是一个完整的体系,一时半会整不明白

@Exuanbo 看了一下很精简啊,感谢推荐
2022-03-05 03:57:34 +08:00
回复了 TWorldIsNButThis 创建的主题 前端开发 2022 年了,怎么还没有 all in one 的 linter+formatter
@yoa1q7y
这个是不是要把 prettier 的配置写在 eslint 里
然后试了下必须引入 react 的报错还是必须得手动关掉,settings 里设置 react 的版本有啥用
@Sapp 我写 react 也经常一个文件一个页面,公司的后台管理项目,经典的面 Java 进来写 springboot+react 。。比如一个 xx item 的列表页,十几个搜索维度,几十个字段,然后还有对每个 item 的操作,写着写着就千行左右了,要拆吧感觉也没啥好拆的。。
1 ... 12  13  14  15  16  17  18  19  20  21  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1616 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms · UTC 17:00 · PVG 01:00 · LAX 09:00 · JFK 12:00
Developed with CodeLauncher
♥ Do have faith in what you're doing.