lesson-4_デバイスデータの削除機能を完成させよう
🗑 デバイスデータを削除しよう
ここまでのレッスンで、3つのデバイスデータ(デバイスエイリアス、対称鍵、公開鍵と秘密鍵のペア)を生成・共有し、保存する機能が完成しました。このレッスンでは、ノートを共有するデバイス一覧から、デバイスを削除する機能を完成させましょう。
デバイスの削除アイコンが押されたときに実行される関数は、route/devices/index.tsx
のDevicesコンポーネントに定義されているdeleteDevice
関数です。deleteDevice関数のログ出力をしている部分を下記のように更新しましょう。
const deleteDevice = async () => {
if (auth.status !== "SYNCED") {
console.error(`CryptoService is not synced.`);
return;
}
setIsLoading(true);
try {
// デバイスを削除します。
await auth.actor.deleteDevice(deleteAlias);
await getDevices();
} catch (err) {
console.error(err);
showMessage({
title: "Failed to delete device",
status: "error",
});
} finally {
onCloseDeleteDialog();
setIsLoading(false);
}
};