簡體   English   中英

KnockoutJS ArrayFirst不能按預期工作

[英]KnockoutJS ArrayFirst doesn't work as expected

我已經在這里嘗試了解決方案:

但是對我來說沒有任何用。 我正在檢查可觀察數組中是否已經存在一項

ko.utils.arrayForEach(self.Summary(), function (item) {

            var match = ko.utils.arrayFirst(self.filteredSummary(), function (a) {
                return a.Sku == item.Sku()
            });

            if (!match) {
                // Do push
            }
        });

難道我做錯了什么? 即使調試后,它始終會返回null,即使它建立了一個匹配項。

我附上了這些代碼片段: 在此處輸入圖片說明

檢查語句

return item.Sku() === a.Sku()

===:等於值和等於類型,==:等於,

https://www.w3schools.com/js/js_operators.asp

在您的情況下,兩個摘要對象的值和類型必須相等。

好,試試這個

ko.utils.arrayForEach(self.Summary(), function (item) {

            var match = ko.utils.arrayFirst(self.filteredSummary(), function (a) {
                return a.Sku() == item.Sku();
            });

            if (!match) {
                // Do push
            }
        });

如果這有效,那么問題是a.SKu是可觀察的,而您沒有對其進行評估! 閱讀我對您的原始問題的評論

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM