【发布时间】:2018-04-11 15:49:01
【问题描述】:
我正在浏览knockout.js 网站上的this tutorial。我在第 5 步中的第 2 步遇到了问题。
有一段代码是这样的:
// Data
var self = this;
self.folders = ['Inbox', 'Archive', 'Sent', 'Spam'];
self.chosenFolderId = ko.observable();
self.chosenFolderData = ko.observable();
// Behaviours
self.goToFolder = function(folder) {
self.chosenFolderId(folder);
$.get('/mail', { folder: folder }, self.chosenFolderData);
};
我的问题是,我不明白 jQuery 如何处理$.get 的第三个参数。据我所知(通过阅读the docs),第三个参数是一个成功函数。但是,self.chosenFolderData 似乎并非如此。
了解为什么这是有效的吗?
【问题讨论】:
-
knockoutjs.com/documentation/observables.html 说“....ko.observable 对象实际上是函数....”我不知道淘汰赛,但我会据此猜测(来自 2 秒的谷歌搜索)如果你返回一个 observable,你实际上是返回一个对函数的引用,在这种情况下,它可以作为回调提供。
标签: javascript jquery ajax knockout.js