К примеру есть несколько свойств и вотчер который отслеживает изменение в одном из них, вроде этого
Vue.component('Test', {
props: {
type: {
type: String,
default: 'one'
},
items: {
type: Array,
default: function() {
return [];
}
}
},
watch: {
items: function(newVal, oldVal) {
console.log(newVal);
console.log(oldVal);
// this.type = 'two';
}
Все хорошо, все работает как надо. Но если в этом вотчере изменить другое свойство вотчер который следит за изменениями в items отработает дважды. Т.е. если мы отслеживаем изменение в одном свойстве и пытаемся изменить в нем другое, то отслеживаемый вотчер также отработает с тем что изменили "внутри", как-то так...
Vue.component('Test', {
props: {
type: {
type: String,
default: 'one'
},
items: {
type: Array,
default: function() {
return [];
}
}
},
watch: {
items: function(newVal, oldVal) {
console.log(newVal); // получили вывод в консоли два раза
console.log(oldVal); // получили вывод в консоли два раза
this.type = 'two'; // изменили свойство type
}
Почему ? Что я не так делаю ? Как сделать правильно ?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Здравствуйте, есть вызов модального окна в attachmenttpl cms DLE Как сделать чтобы при вызове фон размывался и затемнялся?
Пробовал много разных вариантов собрать проект Vue с помощью Gulp в связке с Browserify и Babel
В консоли видно что при нажатии на кнопку props обновляются, например:
Доброго времяни сутокПодскажите пожалуйста почему мой js код не обрабатывается Bitrix`сом