ウィンドウ 1 でチェックして完了済にする
→ DB 上で該当する todo のレコードの is_done を true にする
ウィンドウ 2 で Purge する
→ DB 上で is_done が true のレコードを抽出して削除する
ウィンドウ 2 で未完了表示の todo も DB 上ではウィンドウ 1 の操作で完了済になっているため、結果として、ウィンドウ 2 の Purge 操作で、ウィンドウ 2 上では未完了の表示の todo まで DB から削除してしまいます。
画面の表示上では JavaScript で画面上でチェックが付いている todo を DOM 操作で削除するため、見た目ではウィンドウ 2 で未完了表示である todo は残ります。
しかしウィンドウ 2 の画面をリロードすると、DB では削除済みのため、あったはずの todo がリロードで消えたように見えます。
これはかなり問題が大きいのではないかと感じました。
逆の場合(ウィンドウ 1 でチェックを外して未完了にする)は、ウィンドウ 2 で Purge しても DB 上は未完了のため該当の todo は削除されず、ウィンドウ 2 の画面上ではいったんは削除されたように見えるが、リロードするとチェックが外れた状態で復活するという状態になります。
これはこれで問題はありますが、DB から削除されたわけではないので、比較すると問題は小さいかなと感じます。
この問題を解決する方法をご教授ください。
自分で処理の流れを考えた限りでは、
よろしくお願いします。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?