添加一个像 extend 这样的方法来流畅地使用 ko.observable
Add a method like extend to use fluently with ko.observable
我想知道有没有办法,我可以写一个新的方法test()
,它可以像ko.observable().test()
一样使用,我实际上可以得到里面的observable的引用。我想做的是,我不想写 ko.observable().extend({extenderName: "value"})
,而是想写 ko.observable().extenderName(arg1, arg2)
您可以将其添加到 ko.observable.fn,如下所示:
ko.observable.fn.test = function(arg1) {
console.log(this() + "," + arg1);
};
var obs = ko.observable("hello");
obs.test("world");
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
JS Fiddle: https://jsfiddle.net/c8z8c2r8/
我想知道有没有办法,我可以写一个新的方法test()
,它可以像ko.observable().test()
一样使用,我实际上可以得到里面的observable的引用。我想做的是,我不想写 ko.observable().extend({extenderName: "value"})
,而是想写 ko.observable().extenderName(arg1, arg2)
您可以将其添加到 ko.observable.fn,如下所示:
ko.observable.fn.test = function(arg1) {
console.log(this() + "," + arg1);
};
var obs = ko.observable("hello");
obs.test("world");
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
JS Fiddle: https://jsfiddle.net/c8z8c2r8/