Я пишу функцию для обновления пользовательского флажка при нажатии (и я не хочу использовать собственный флажок по некоторым причинам).
Код для флажка
<div class="tick-box" :class="{ tick: isTicked }" @click="() => isTicked = !isTicked"></div>
, который работает, находят.
Однако флажков так много, что я использую объект для отслеживания каждого элемента.Выглядит это так
<!-- (inside v-for) -->
<div class="tick-box" :class="{ tick: isTicked['lyr'+layer.lyr_id] }" @click="() => {
isTicked['lyr'+layer.lyr_id] = !isTicked['lyr'+layer.lyr_id]
}"></div>
Теперь ничего не происходит, вообще никаких ошибок.
Когда я хочу увидеть значение isTicked
с {{ isTicked }}
, оно просто показывает {}
.
Это то, что я определяю в <script></script>
части.
export default {
data() {
return {
isTicked: {},
...
};
},
...
}
Не могли бы вы помочь мне, где я ошибаюсь?
Спасибо!
Редактировать:
Я знаю, что объявление isTicked: {}
, первые несколько кликов ничего не сделают, потому что его свойство не определено.Однако, это должно быть определено первым / вторым щелчком, а не чем-то вроде этого.