我正在阅读官方网站上的教程:
这是视图:
<!-- Folders -->
<ul class="folders" data-bind="foreach: folders">
<li data-bind="text: $data,
css: { selected: $data == $root.chosenFolderId() },
click: $root.goToFolder"></li>
</ul>
和脚本:
function WebmailViewModel() {
// Data
var self = this;
self.folders = ['Inbox', 'Archive', 'Sent', 'Spam'];
self.chosenFolderId = ko.observable();
// Behaviours
self.goToFolder = function(folder) { self.chosenFolderId(folder); };
};
ko.applyBindings(new WebmailViewModel());
我不明白两件事:
'click:' 事件正在调用 javascript 函数 goToFolder,但是,没有参数,它如何知道单击哪个文件夹来设置 selectedFolderId ?
如果我错了,请纠正我,这行 css: { selected: $data == $root.chosenFolderId() } 表示如果当前选择的对象 $data 等于 selectedFolderId(),因此选择名称的 css 是 enable 吗?
祝大家欢呼