0
У меня есть объект под названием Attendees
и еще один объект с именем TempAttendee
. Форма привязана к TempAttendee
, и когда пользователь отправляет эту форму, она принимает TempAttendee
и толкает ее до Attendees
.Vue.js - Push на объект без отслеживания
Проблема в том, что любые дальнейшие изменения в форме будут редактировать этого участника в объекте Attendees
из-за реактивности. Как я могу обойти это?
<template>
<div>
<ul class="attendeeEditor">
<li class="attendeeEditor__attendee" v-for="(attendee, index) in attendees">
<span class="attendeeEditor__field">{{ attendee.email }}</span>
</li>
<li class="attendeeEditor__attendee attendeeEditor__form">
<input v-on:keydown.enter="addAttendee" class="attendeeEditor__field" placeholder="Email Address..." type="email" v-model="tempAttendee.email" required />
</li>
</ul>
</div>
</template>
<script>
export default {
name: 'attendee-picker',
data: function() {
return {
attendees: {},
tempAttendee: {
email: ""
}
}
},
methods: {
addAttendee: function(event) {
this.attendees.push(this.tempAttendee);
}
}
}
</script>
Я не уверен, как применить свое предложение к моему коду, я обновил свой вопрос, чтобы включить его. Я не хочу создавать копию участника в объект tempAttendee, но наоборот, добавьте 'tempAttendee' в объект' Attendees'. – KeironLowe
Хорошо. Перед вашим кодом не было ясно. Затем просто нажмите копию темпа для посетителей –
Ahh так близко, просто «Object.assign» мне не хватало, спасибо за вашу помощь! – KeironLowe