ViewModel があり、そのプロパティの 1 つが observableArray (レシーバー) です。新しいレコードを追加する前に、メール アドレスがコレクションに既に存在するかどうかを確認して、エントリが重複しないようにしたいと考えています。助けてください。ここからアプローチを試しました 観察可能な配列に条件付きで項目をプッシュする方法は? しかし、それは機能していません。メールに追加する項目が既にリストにあるかどうかを検出できません。AddReceiver 関数が呼び出された場合に、newReceiverData メール アドレスを検証する必要があります。これが私のコードです。
ビューモデル
var ReceiversViewModel = function () {
var self = this;
var errorModal = {};
self.firstname = ko.observable();
self.lastname = ko.observable();
self.receivers = ko.observableArray();
self.newReceiver = {
receiverfirstname: ko.observable(''),
receiverlastname: ko.observable(''),
receiveremailaddress: ko.observable('')
};
self.AddReceiver = function () {
var newReceiverData = ko.toJS(self.newReceiver);
if (ReceiverValidate() == true) {
//check if newReceiverData.receiveremailaddress value already exist
self.receivers.push({
EmailAddress: newReceiverData.receiveremailaddress,
FirstName: newReceiverData.receiverfirstname,
LastName: newReceiverData.receiverlastname
});
}
};
};