javascript - Knockout.Js 中的多个 afterAdd 调用
问题描述
我最近开始使用 Knockout.js 库。我有一个项目网格,我正在尝试在 foreach 中使用 afterAdd 属性。问题是它调用了 afterAdd 处理程序 3 次而不是 1 次。是有什么问题还是它是 knockout.js 的正确行为(为什么?)
这是 HTML 代码片段
<tbody id="body_table" data-bind='foreach: { data: items, afterAdd: addSelect2}'>
这是淘汰视图模型代码片段
self.addSelect2 = function(element, index, data) {
console.log(element);
}
解决方案
是的,这是预期的行为,因为它是为项目中的每个新元素调用的。该文档指出,这afterAdd
专门用于“触发与列表更改相关的动画”,并且“仅在将新条目添加到您的数组时才调用”。
在这里阅读更多。
似乎您需要为您的要求创建自定义绑定。
推荐阅读
- javascript - $ 不是函数(在 JQuery 中发生错误)
- python-3.x - Selenium - 动态改变ip
- java - 如何从写入的文件中获取数字
- android - 处理带有阴影偏移的拖放
- angular - 如何在 Angular 服务中直接使用 .subscribe?
- string - 使用空接口更改函数中的 arg
- microsoft-teams - 文件上传失败 MSTeams
- javascript - 发布请求在 Postman 和 cURL 中有效,但在 Angular 中无效
- javascript - 如何在自定义导航菜单中正确使用点击事件?
- sql - SQL查询查找每个用户的活动时间