Closed RobinYang11 closed 1 year ago
@RobinYang11 https://codesandbox.io/embed/lucid-https-5718lo?fontsize=14&hidenavigation=1&theme=dark
我测试并没有什么问题
import "./styles.css"; import { useState } from "react"; import Alpha from "@uiw/react-color-alpha"; import { hsvaToRgbaString } from "@uiw/color-convert";
function Demo() { const [hsva, setHsva] = useState({ h: 0, s: 0, v: 68, a: 1 }); const [obj,setObj] = useState({ name:"robin", age:33 })
return ( <> <Alpha hsva={hsva} onChange={(newAlpha) => { setHsva({ ...hsva, ...newAlpha }); setObj({ ...obj }) }} /> {obj.name} <button onClick={()=>{ setObj({ ...obj, name: "changedName" }) }}>changeName <div style={{ background: hsvaToRgbaString(hsva), marginTop: 30, padding: 10 }}
{JSON.stringify(hsva)}
</div>
</>
); }
export default function App() { return (
); }
先点击button 改变名字, 然后你再拖动 ,name 就变为初始值了,就是因为包了useCallback
@RobinYang11 你拖动的时候,不是去改变了 name
?
先点击button 改变名字, 然后你再拖动 ,name 就变为初始值了,就是因为包了useCallback
我看了示例,name
并没有变成初始值,而是 onChange
去更改了 name
的值
你再刷新一下 我的例子 我改了,我增加了一个数组字段
@RobinYang11 Upgrade v1.1.4