Skip to content

Commit ed3d5af

Browse files
authored
Refactor setOptimisticTodos to use block syntax
Updated the optimistic state management to use a block for pushing todos.
1 parent 69949d9 commit ed3d5af

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

documentation/solid-2.0/06-actions-optimistic.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ const [todos, setOptimisticTodos] = createOptimisticStore(() => api.getTodos(),
2727

2828
const saveTodo = action(function* (todo) {
2929
// optimistic write
30-
setOptimisticTodos((todos) => todos.push(todo));
30+
setOptimisticTodos((todos) => { todos.push(todo); });
3131

3232
// perform async work
3333
yield api.addTodo(todo);
@@ -41,7 +41,7 @@ For better TS ergonomics, an async generator form is also viable:
4141

4242
```js
4343
const saveTodo = action(async function* (todo) {
44-
setOptimisticTodos((todos) => todos.push(todo));
44+
setOptimisticTodos((todos) => { todos.push(todo); });
4545
const res = await api.addTodo(todo);
4646
yield; // resume action in the same transition context
4747
refresh(todos);
@@ -67,7 +67,7 @@ refresh(() => query.user(id()));
6767

6868
```js
6969
// After a server write, refresh derived store reads
70-
const [todos] = createStore(() => api.getTodos(), { list: [] });
70+
const [todos] = createStore(() => api.getTodos(), []);
7171

7272
const addTodo = action(function* (todo) {
7373
yield api.addTodo(todo);
@@ -96,7 +96,7 @@ const updateName = action(function* (next) {
9696
const [todos, setOptimisticTodos] = createOptimisticStore(() => api.getTodos(), []);
9797

9898
const addTodo = action(function* (todo) {
99-
setOptimisticTodos((s) => s.list.push(todo));
99+
setOptimisticTodos((todos) => { todos.push(todo); });
100100
yield api.addTodo(todo);
101101
// refresh store/projection form (object with [$REFRESH])
102102
refresh(todos);

0 commit comments

Comments
 (0)