gpt4 book ai didi

Knockout.js 点击绑定(bind)参数

转载 作者:行者123 更新时间:2023-12-04 02:35:25 24 4
gpt4 key购买 nike

我有这个小 ViewModel:

function BooksViewModel() {
var self = this;
self.books = ko.observableArray(library);

self.findByLanguage = function(lang) {
self.books = ko.computed(function() {
return ko.utils.arrayFilter(library, function(book) {
return book.language() === lang;
});
});
};
}

findByLanguage 方法按语言过滤数组。在 View 中,我尝试像这样实现:
<ul class="dropdown-menu">
<li><a tabindex="-1" href="#" data-bind="click: findByLanguage('C')">C</a></li>
<li><a tabindex="-1" href="#" data-bind="click: findByLanguage('Cpp')">C++</a></li>
</ul>

我试图通过从那里调用语言参数来重用该函数。但是,如果我在 data-bind 上传递一个带括号的函数,它会自动被调用。

我怎样才能做到这一点?

最佳答案

我知道这个问题很老,但如果有人感兴趣,根据 docs ,第一个参数应该是一个viewModel,然后它按预期工作。

<ul class="dropdown-menu">
<li><a tabindex="-1" href="#" data-bind="click: findByLanguage.bind($data, 'C')">C</a></li>
<li><a tabindex="-1" href="#" data-bind="click: findByLanguage.bind($data, 'Cpp')">C++</a></li>
</ul>

关于Knockout.js 点击绑定(bind)参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13221211/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com