Все должно измениться, потому что интерполяция , которую вы выполняете с переменной Acknowledge, происходит для всех карт.Все карты связывают одну и ту же переменную Подтверждение . В вашем примере каждая кнопка будет учитывать одну и ту же переменную Подтверждения, и будет отображаться значение Подтвержденный заказ .если вы хотите, чтобы вы могли создать другое свойство в объекте item, скажем ack и присвоить ему другой текст, а затем визуализировать {{item.ack}}, проверьте следующий пример
<ion-content padding>
<ion-card *ngFor = "let item of unack">
<button (click) = "StartS(item)" ion-button>
{{item.ack}}
</button></ion-card>
</ion-content>
Файл Js может выглядеть следующим образом:
export class HomePage {
public unack = [
{ name : 'apple', color : 'red', ack : 'Not acknowledged'},
{ name : 'orange', color : 'red', ack : 'Not acknowledged'},
{ name : 'penut', color : 'brown', ack : 'Not acknowledged'},
{ name : 'milk', color : 'white', ack : 'Not acknowledged'}
]
constructor(public navCtrl: NavController) {
}
StartS(item){
item.ack = item.ack == "Not acknowledge" ? "Acknowledged Order" : "Not acknowledge"
}
}