如何在 Angular-Masonry 中触发重新加载?

2024-04-15

我使用 Masonry 在我的 AngularJS 应用程序中工作角砌体 https://github.com/passy/angular-masonry指令,但我希望能够调用控制器中的函数或方法来触发容器中项目的重新加载。我在源代码(第 101-104 行)中看到有一个重新加载方法,但我不确定如何调用它。有任何想法吗?

Thanks!


为了防止将来有人使用它,Passy 会监视名为 masonry.reload 的事件。

因此,您可以发出此事件,Passy 应该在砌体元素上调用“布局”,例如称呼

$rootScope.$broadcast('masonry.reload');

就我而言,我有一些第三方 JavaScript 来装饰我的砖块,所以完成后我需要重新绘制。由于原因(我无法弄清楚为什么),我需要将事件广播包装在超时中,我认为 Passy 调度程序正在吞噬该事件而不是重新绘制。例如。我做了:

$timeout(function () {
   $rootScope.$broadcast('masonry.reload');
   }, 5000);

这样你就不必直接修改Passy。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Angular-Masonry 中触发重新加载? 的相关文章

随机推荐