如何通知绑定处理程序内容已完全加载
How to notify a binding handler the content is fully loaded?
我正在创建一个绑定处理程序与carousel基于我的API给出的js对象工作。出于测试目的,我静态加载内容。
我有以下对象:
self.images = [
{
imageUrl: 'http://www.triptips.com.br/site/wp-content/uploads/2013/11/castillo-praga.jpg',
description: 'Photo from Praga.'
},
{
imageUrl: 'http://www.4yourevista.com.br/wp-content/uploads/2014/06/berlim-01-4you.jpg',
description: 'Photo from Berlim.' },
{
imageUrl: 'http://cdni.wired.co.uk/1920x1280/k_n/London_5.jpg',
description: 'Photo from London.' },
{
imageUrl: 'http://www.dudalinafeminina.com.br/blog/wp-content/uploads/2013/08/paris2.jpg',
description: 'Photo from Paris.' },
{
imageUrl: 'http://upload.wikimedia.org/wikipedia/commons/e/e1/1_hongkong_panorama_victoria_peak_2011.JPG',
description: 'Photo from Hong Kong.' }
];
好吧,一旦imageUrl将从其他地方加载,它将需要一些时间来完全加载。
我正在创建这个处理程序:
ko.bindingHandlers.carousel = {
init: function(element, valueAccessor, allBindings, viewModel, bindingContext) {
$(element).slick({ ... }); // this is the slider component
},
update: function(element, valueAccessor, allBindings, viewModel, bindingContext) {
}
}
处理静态内容(比如一些文本),效果很好。但是,当我尝试在foreach
迭代中使用此绑定时,它不起作用。
<div class="centered" data-bind="carousel: {}, foreach: images">
<div>
<img alt="" data-bind="attr: { src: imageUrl, title: description }" />
</div>
</div>
谢谢你的帮助!
按照找到绑定的顺序进行解释。
您可能希望foreach
绑定在carousel
绑定之前执行,因此尝试将它们反转:
<div class="centered" data-bind="foreach: images, carousel: {}">
相关文章:
- 如何使用url加载程序在webpack中导入多个图像
- 如何创建带有插槽的vue js组件预加载程序
- Webpack/Rect:遵循egghead.io教程,但出现错误:您可能需要一个合适的加载程序来处理此文件类型
- 页面加载之前的jQuery Ajax加载程序
- 永远不要停止gif预加载程序
- Dojo AMD加载程序执行定义具有空/缺失依赖项的回调
- 用于各个元素的Ajax加载程序
- 显示全屏Ajax加载程序的最佳方式
- 要求创建空模块作为依赖项加载程序
- 如何在发送ajax请求时显示进度加载程序
- 如何更改jquerymobile中默认的加载ajax加载程序gif
- 避免将lib依赖项与webpack+handlebas加载程序捆绑在一起
- 带有模块加载程序的Emscripten
- 图像预加载程序
- Angular 1.X,webpack和ngtemplate加载程序问题
- 动画加载程序gif未旋转
- 为 HTML5 游戏添加游戏加载程序
- 创建 UI 加载程序时的引导程序
- 单击链接后显示加载程序
- 纯javascript的进度图像加载程序仅当用户单击提交html表单时