V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  mouyase  ›  全部回复第 2 页 / 共 41 页
回复总数  815
1  2  3  4  5  6  7  8  9  10 ... 41  
@huijiewei 刚刚这边做着做着就有了一个疑问。

假设还是上面的结构。

A 组件内部有一个 state ,一个按钮和一个文本,state 用来判断一个文本的展示与否。同时我需要外面(比如 B 组件)接收到这个 state 用于逻辑处理。所以我应该在按钮点击事件的时候,修改 state ,同时调用父组件传入的 onChange 函数,传出 state 。

但是如果这种情况下,我还需要 C 按钮也可以切换这个 A 组件的 state ,我应该怎么处理比较好?

我现在的做法是,在父组件放一个 state ,然后 A 组件 onChange 的时候,将传出的数值赋值到这个 state 上,同时,又把这个 state 传入 A 组件作为 prop ,然后在 a 组件用 useEffect ,当这个值变化的时候再给 A 组件内的 state 赋值。然后 C 操作的时候修改父级的 state 。

这样似乎会导致 A 组件内部按钮按下时,组件渲染两次。
@DimitriYoon 后入场的项目没办法(
18 天前
回复了 sudoy 创建的主题 Node.js nodejs 用户为什么这么爱变来变去呢?
应该没有什么技术是一成不变的吧。哪怕是完美语言 php 呢,不也变成了 PHP: Hypertext Preprocessor 了。
@Adelell 说实话我们的数据有些问后端都不知道这个字段是干嘛的或者怎么解释,我们前端也很难用语言描述,感觉接 GPT 可能也没那么现实……
@shizhibuyu2023 API 这边现在给的数据比较乱,字段又多又杂,而且不同的应用场景同一个字段也会有不同的用途,所以一直都没有想到一个比较优秀的统一处理方案
@Adelell 所以有什么好的方案用来做数据清洗吗
@wkmike 是不是只有类组件才能这样处理,如果是函数组件呢
@wkmike 那是不是所有的组件的 props 都要独立成不同的 state 呢,如果所有的 state 都在同一个 Object 里,是不是就无效了?
@rabbbit 这种情况下,MyInput 每次输入都会导致 App 组件整体重渲染吧。
@huijiewei 感谢解惑。

如果是操作 A 组件导致 B 组件变换。
<Comp>
<A />
<B />
<C />
<D />
<E />
<F />
</Comp>
如果是这种组件结构的话,A 去修改 B 的 props 值,则需要把 state 放到 Comp 里吧。但是如果是这样,state 就会导致整个 Comp 都会重新渲染,最后导致 CDEF 组件全都重渲染,这种情况有什么好的办法吗。
@rabbbit

如果传值进来的话,是通过 props 传进来吗?那这个值是不是需要是一个 state ?那我修改 state 的时候,会导致这个组件和父级组件都重新渲染,会导致重复的生命周期。
事件传出去的值是不是也要用 state 保存呢?不然应该如何根据一个组件的值修改另一个组件呢。
19 天前
回复了 pidan 创建的主题 问与答 请教一下关于 app 拦截并修改请求参数
逆向到对应的接口修改咯
@BoomMan 这种是不是写的时候还是得组件根据各种不同的数据源来进行判断,再取值呢
P233 @Rocketer 就是在数据请求回来时候重新做数据拼装然后在传递给 UI 组件吗,这样会不会导致数据转换地狱呢,一串数据在不同的组件传递的时候经过了 N 多次转换之类的。请问有没有什么好的数据转换的方法呢( js/ts)
19 天前
回复了 sworld233 创建的主题 开源软件 开源项目得到了第一笔捐赠
之前做 App 也收到了几百元的捐赠,只能说感谢大家对开源项目的支持
大多数时候不做 win 开发和嵌入式开发的话,mac 的开发体验都是比较优秀的,相对来说会比 win 用起来更爽一些。我司目前有很多涉及到原生 SDK 的部分,所以没有 all in expo ,而是选择 rn+expo 组件的形式做的。
我在 Obsidian 里面是没有写的,文件名就是标题,筛选的信息写在 meta 里了

PS: 有小桥流水哗啦啦,通常召唤孤火花
38 天前
回复了 xhatt510 创建的主题 问与答 论商场里的电玩城的本质?
同 12 楼,现在要去街机厅基本就是去出勤音油,尤其是 maimai ,wacca 和太鼓,这仨东西都很难在家里面体验。
38 天前
回复了 jngho 创建的主题 美酒与美食 请分享一下好吃的大米
想要米好吃,好锅也少不了,最差也要支持 IH 。
39 天前
回复了 W4J1e 创建的主题 程序员 开源项目开发者的歧视依然存在吗?
与其说是开发者的歧视,说到底还是人有歧视。同样的人放到游戏环境里也会有单机歧视网游,主机歧视 PC 的想法的。至于宽带的问题,移动宽带是真的罪该万死,但是用户不应该承受职责。如果是我开发了一个需要稳定网络使用的软件,而用户又是移动网络,我只会劝他换个网,如果实在没有办法换就只能自己想想办法,毕竟我只能对软件负责,网络和用户都不是我该去考虑的。
1  2  3  4  5  6  7  8  9  10 ... 41  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2654 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 15:36 · PVG 23:36 · LAX 08:36 · JFK 11:36
Developed with CodeLauncher
♥ Do have faith in what you're doing.