javascript – AngularJS – 在不使用$timout的情况下调用wookmark布局

我目前正在使用wookmark插件和
angularjs参与创建像缩略图这样的pinterest的任务.我可以使用10秒的超时显示缩略图,因为服务器需要时间来响应.我想在数据完全加载后调用布局.我已经尝试过,但没有运气.

有没有办法在不使用$timeout的情况下调用Wookmark布局?

我的代码如下:

myApp.controller("MyCtrl", ['$scope', '$timeout', 'eventData', function($scope,  $timeout, eventData) {
    function init() {
        $scope.publicstreams = [];
        $scope.publicstreams = eventData.getEvent(0);
        $timeout(initWookmark, 10000);
    }

    function initWookmark() {
        var options = {
            autoResize: true, // This will auto-update the layout when the browser window is resized.
            container: $('#tiles'), // Optional, used for some extra CSS styling
            offset: 5, // Optional, the distance between grid items
            flexibleWidth: 310 // Optional, the maximum width of a grid item
        };
        var handler = $('#tiles li');
        $('#tiles').imagesLoaded(function() {
            // Prepare layout options.
            // Get a reference to your grid items.
            // Call the layout function.
            handler.wookmark(options);
        });
        handler.wookmark(options);
    }
    init();
}]);

任何帮助将不胜感激!

最佳答案 感谢上帝!

最后我自己弄清楚了.我在$timeout中将延迟设置为0并且它有效.

怎么样?

在浏览器中完成DOM渲染后,$timeout实际执行.所以即使延迟0毫秒也能工作.

点赞