¿Vue.js tiene una forma integrada de agregar una copia de un objeto persistente a una matriz repetida?

Tengo una aplicación Vue.js donde tengo una v-repetición en una variedad de elementos. Quiero agregar un nuevo elemento a la lista de elementos. Cuando lo intentothis.items.push(this.newItem) el objeto empujado todavía está vinculado a la entrada. Considere lo siguiente:

new Vue({
  el: '#demo',

  data: {
    items: [
      {
        start: '12:15',
        end: '13:15',
        name: 'Whatch Vue.js Laracast',
        description: 'Watched the Laracast series on Vue.js',
        tags: ['learning', 'Vue.js', 'Laracast', 'PHP'],
        note: "Vue.js is really awesome. Thanks Evan You!!!"
      },
      {
        start: '13:15',
        end: '13:30',
        name: "Rubik's Cube",
        description: "Play with my Rubik's Cube",
        tags: ['Logic', 'Puzzle', "Rubik's Cube"],
        note: "Learned a new algorithm."
      }
    ],
    newItem: {start: '', end: '', name: '', description: '', tags: '', note: ''}
  },

  methods: {
    addItem: function(e) {
      e.preventDefault();

      this.items.push(this.newItem);
    }
  }
});

Lo anterior, como se esperaba, empujará el objeto que está vinculado a la matriz de elementos. El problema es que solo quiero una copia del objeto para que ya no cambie cuando cambie la entrada. Mira estoeste violín. Sé que puedo hacer:

addItem: function(e) {
  e.preventDefault();
  this.items.push({
    name:        this.newItem.name,
    start:       this.newItem.start,
    end:         this.newItem.end,
    description: this.newItem.description,
    tags:        this.newItem.tags,
    notes:       this.newItem.notes
  })
}

Esto funciona Pero es mucha repetición.

La pregunta: ¿Existe una forma integrada de agregar solo una copia del objeto en lugar del objeto persistente?

Respuestas a la pregunta(3)

Su respuesta a la pregunta