App: fix the clients change is not notified
This commit is contained in:
parent
fd47639bef
commit
bd3ad078a2
4 changed files with 122 additions and 79 deletions
|
@ -13,3 +13,31 @@ You can debug on the Safari on iOS only if you have mac (and run macOS). The cer
|
|||
## Hero Animation won't work (after hot reload)
|
||||
|
||||
That's a known issue. Hot reload won't refresh the module sets the hero cache. Refresh the whole page and it should work.
|
||||
|
||||
## The components don't react to the change as I setting the store, until the page reloaded
|
||||
|
||||
The `WritableAtom<unknwon>.set` might do an equals check. You must set a different object to ensure the atom sending a notify.
|
||||
|
||||
The code below may not notify the change:
|
||||
|
||||
```ts
|
||||
export function updateAcctInf(idx: number) {
|
||||
const o = $accounts.get();
|
||||
// ...
|
||||
o[idx].inf = inf;
|
||||
$accounts.set(o);
|
||||
}
|
||||
```
|
||||
|
||||
Instead, set a new object:
|
||||
|
||||
```ts
|
||||
export function updateAcctInf(idx: number) {
|
||||
const o = $accounts.get();
|
||||
// ...
|
||||
o[idx] = Object.assign({}, o[idx], { inf });
|
||||
$accounts.set(Array.from(o));
|
||||
}
|
||||
```
|
||||
|
||||
Ja, the code is weird, but that's the best we know. Anyway, you need new object on the path of your changed value.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue