Retirer l'objet à partir de la matrice de caractères d'imprimerie(Angulaire 2)

Je viens d'essayer de supprimer l'objet de la matrice en caractères d'imprimerie, dans angulaire 2.4.0, laissez-moi vous montrer le code, son mon fichier html:

button type="submit" (click)="addAnotherLanguague()" >Add non native languague</button>
<li *ngFor="let languague of listOfLanguagues;">
     <div class="form-item form-item--text">
           <label class="label invisible">Years studied</label>
           <input type="number" min="0" [(ngModel)]="languague.yearsStudied" name="years"  placeholder="Years studied"/>
     </div>
<button type="submit" (click)="removeLanguague(languague)" >Remove</button> // here you can see use of method
</li>

Et il est une composante.ts

(...)
this.listOfLanguagues = new Array <LanguagueInformationData>();
    }
addAnotherLanguague(){
        this.listOfLanguagues.push(new LanguagueInformationData);
    }
    removeLanguague(languague){
        this.listOfLanguagues.slice(this.listOfLanguagues.indexOf(languague), 1);
    }
(...)

L'ajout fonctionne bien, mais j'ai essayé de tout supprimer et ne comprends toujours pas comment transférer que languague de référence, je ne veux pas utiliser .pop, parce que je veux supprimer exactement ce languague ci-dessous qui est le bouton.
Pouvez-vous m'aider?

[modifier]
J'ai eu de nouveau de problème avec ce code, parce que chaque fois que j'essaie d'ajouter de nouveaux languague(push), il efface mes données sur les classes existantes dans la gamme, savez-vous à quoi peut-il provoquer ?

Double Possible de supprimer l'élément de tableau stocké dans angulaire 2
J'ai modifié un peu ma question, à cause de la nouvelle émission

OriginalL'auteur Jędrek Markowski | 2017-07-12