2016-03-21 7 views
1
_.remove($scope.posts, post); 

I ', mit _.remove, um Elemente aus einem Array mit Lodash zu entfernen. Aber wie füge ich Objekte wieder hinzu? Also, was ist das Gegenteil von _.remove.Was ist das Gegenteil von _.remove

Antwort

1

_.remove entfernt ein Element aus einem Array, jetzt, da Sie eine entgegengesetzte wollen von der Entfernung, die gedrückt werden kann, gibt es kein _.push verfügbar. Also, ich denke, es ist besser, native Push-Funktion zu verwenden. hier sind einige Dinge, die Sie berücksichtigen können:

var posts = [{a:1},{b:3},{f:3}]; 
var post = {a:1}; 

_.remove(posts, post); // posts = [{b:3},{f:3}] 

Objekt bei 0 Index hinzufügen

posts.unshift(post);//posts = [{a:1},{b:3},{f:3}] 

Objekt zuletzt Index hinzufügen

posts.push(post);//posts = [{b:3},{f:3},{a:1}] 

Objekt bei einem Index

einfügen
posts.splice(1, 0, {g:8}); // posts = [{a:1},{g:8},{b:3},{f:3}] 

an d kannst du _mixin natürlich benutzen.

_.mixin({ 
    push: function(arr,obj){ 
     return arr.push(obj); 
    } 
}); 

und Sie können es verwenden, wie

_.push(posts,post); 

JsFiddle for mixin example

1

Bitte versuchen _.fill, füllt Elemente der Matrix mit dem Wert von Start bis zu

_.fill(array, value, [start=0], [end=array.length])

_.fill([4, 6, 8, 10], '*', 1, 3); 
// → [4, '*', '*', 10]