2015-03-11 12 views
6

Sono sconcertato da questo. Nell'aula angolare e sul github esiste una funzione di unione che fa un profondo unione su due oggetti, a differenza di extend() che fa una copia poco profonda.Angolare 1.3.14 unione (dst) inesistente

Io uso cdn di google per angolare e call angular.extend ('param') funziona, ma la chiamata di angular.merge ('param') fornisce una funzione indefinita. Confrontando angular.js da google e uno da sé angolari, l'unione esiste su quella angolare, ma non su google.

Qualsiasi idea, o qualcun altro con questo problema. Posso far sapere a google in qualche modo?

risposta

11

Sentirsi come un pazzo, è disponibile solo nella versione beta 1.4 Spero che questo sia ancora in grado di aiutare qualcuno che si sta chiedendo pure. :)

copiato anche dalla versione più recente:

//Leave out the {} to directly change src 
function merge(src, newObj) { 
    return angular.extend({},src, newObj); 
} 
+1

Infatti. La tua risposta ha aiutato molto. Tuttavia, ho scritto una funzione personalizzata copiando il codice per la funzionalità di unione, è possibile utilizzarlo nelle versioni precedenti di angularjs - http://stackoverflow.com/a/29003438/548308. Per il fatto che puoi accettare la tua risposta :) – Mathankumar

+0

Giusto per notare però, questo non è un polyfill/sostituto di 'angular.merge'. – JimmyBoh

+2

Questo non è corretto. Unisci ed estendi sono diversi. 'angular.extend' non supporta l'unione ricorsiva (copia profonda) - questo è il motivo per cui devi usare' angular.merge' se vuoi fare una copia profonda del tuo oggetto. –

Problemi correlati