useState()
钩子,它基于 Preact。在一个岛上我有:
import { useState } from "preact/hooks";
export default function(){
const [state, setState] = useState('hi')
const str = 'a'
setState(str)
console.log(state)
}
这个效果很好。但如果我使用一个对象来代替:
- const str = 'a'
- setState(str)
+ const obj = {a: 'a'}
+ setState(obj)
然后就陷入了无限循环。这是为什么?
这归结为一个问题:
console.log("a" === "a");
console.log({ x : "a" } === { x : "a"}); //Why is this false when above is true