说我有一个按钮 <Button onClick={updateAndSave()}>
和一组状态 const [random,setRandom] = useState(randomValue())
每当我点击按钮时,random
就会更新。假设我做了几行这样的:
let h = random;
let y = random + 2;
因此,每当 random
更改时,使用它的所有变量也会更新。但是,我希望能够在上一次点击中存储 random
的值。我该怎么做呢?我认为这不太可能,因为无论在哪里使用 random
,它都会得到更新,我该怎么做?
答案 0 :(得分:1)
这按预期工作。如果您真的想保留点击的先前状态,您可以做的不是将 random
分配为整数,而是使用数据结构来保留状态。您可以使用数组并在每次点击后附加和附加,或使用对象来保留键值对 click1: 12
作为数组:
let random = [];
random.push(randomValue());
random.push(randomValue());
// random = [1,3]
As object:
let random = {};
random.click1 = randomValue();
random.click2 = randomValue();
// random = {click1: 1, click2: 3}
取决于您的用例以及您希望如何检索以前的状态