Below is my code, here I want to push the subModule
object into the selectedPieces
array if submodule.active
is true
and if it is not present inside the selectedPieces
array. But in my code, it is inserting values multiple times after inserting two values. The Pieces
object is as below and activateClass
is my method on which if I will click I will get the piece object.
Pieces = {
pieceId: 1,
img: '../../../../assets/img/piece.PNG',
letter: 'O',
active: false
}
activateClass(subModule){
subModule.active = !subModule.active;
subModule.activeli = !subModule.activeli;
if(this.selectedPieces.length == 0 && subModule.active == true){
this.selectedPieces.push(subModule);
}
else{
for(let i=0;i< this.selectedPieces.length; i++){
if(subModule.active == true && subModule.pieceId !== this.selectedPieces[i].pieceId){
this.selectedPieces.push(subModule);
}
if(subModule.active == false && subModule.pieceId == this.selectedPieces[i].pieceId){
this.selectedPieces.splice(i);
}
}
}
console.log(this.selectedPieces);
}