我把同一个 Modifier 实例绑定到了两个按钮上,点击按钮 1 会改变背景色,结果两个按钮的颜色都变了。这是预期的行为吗?感觉不太对。
let modifier = new MyButtonModifier();
Button("Btn1").attributeModifier(modifier)
Button("Btn2").attributeModifier(modifier)
点击 Btn1 后,Btn2 也变色了,这是设计就是这样的?
我把同一个 Modifier 实例绑定到了两个按钮上,点击按钮 1 会改变背景色,结果两个按钮的颜色都变了。这是预期的行为吗?感觉不太对。
let modifier = new MyButtonModifier();
Button("Btn1").attributeModifier(modifier)
Button("Btn2").attributeModifier(modifier)
点击 Btn1 后,Btn2 也变色了,这是设计就是这样的?
13 回答12.6k 阅读
7 回答1.8k 阅读
3 回答1k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
2 回答1.8k 阅读
2 回答1k 阅读✓ 已解决
对啊~,这是预期行为。
如果同学你需要组件独立控制,建议为每个组件创建独立 Modifier 实例:
或者将状态隔离到 Modifier 外部,传入构造参数来区分组件行为。