VueJSで、チェックボックス変更で@changeとconfirmを使用してOK/キャンセルを出すところまでは完了しました。
ここで、キャンセルが押された場合、実行を中止する方法がわかりません。
以下のような定義を記述しましたが上手に反映されません。
javascript
1 methods: { 2 unlock() { 3 this.checkBoxTemp = Boolean(this.formData.locked); 4 if (!confirm('ロック状態を変更しますか?')) { 5 console.log(this.checkBoxTemp); 6 this.formData.locked = !this.checkBoxTemp; 7 } 8 } 9 }
#追記: 2019/11/22 13:56
現在全体のソースコードは、以下のような形です。
<template> <div> <v-checkbox v-model="formData.locked" label="項目ロック" color="default" @change.stop="unlock()" ></v-checkbox> </div> </template> <script> export default { name: "Pref", data() { return { dialog: true, checkBoxTemp: null, formData: [locked: true], } }, methods: { unlock() { this.checkBoxTemp = Boolean(this.formData.locked); if (!confirm('ロック状態を変更しますか?')) { console.log(this.checkBoxTemp); this.formData.locked = !this.checkBoxTemp; } } } } </script>
期待する動作
項目ロックの状態が変化したときに、メソッド内のunlock()が発動して、確認画面が出てくる。
そのあと、キャンセルを押すと、元の状態(変更前の状態)に戻るという動作を期待しています。
回答1件
あなたの回答
tips
プレビュー