Я только что понял странное поведение Vue.js при использовании вычисляемых свойств.Может быть, я что-то упускаю, и это правильное поведение, но для меня это не имеет смысла.Если вы посмотрите на следующий код, который вы увидите внутри вычисляемого свойства, я создал новую переменную и назначил массив, определенный в «data».Затем я поместил некоторые новые данные во вновь созданную переменную.Теперь массив в «data» также изменился!Почему это так?
new Vue({
el: "#app",
data: {
items: ['foo', 'bar']
},
computed: {
someComputed() {
let some = this.items
some.push('foobar')
return some
}
}
})
<div id="app">
{{ someComputed }} – {{ items }}
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>