尝试在项目上使用klederson的Angular Masonry Directive,但无法使其正常工作。在元素的body标签中占用了空间,但这些元素不可见,并且控制台中显示了上述错误。

注入砖石依赖性:

angular.module("cardSite",['masonry'])


我用来标记砌体的标记。每当我尝试JS方式时,都会遇到相同的错误。

    <div masonry='{ "transitionDuration" : "0.4s" , "itemSelector" : ".grid-item"}' class="grid">
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item grid-item--width2">...</div>
        <div masonry-tile class="grid-item--height2">...</div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item grid-item--width2">...</div>
        <div masonry-tile class="grid-item--height2"></div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item grid-item--width2">...</div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item--height2"></div>
        <div masonry-tile class="grid-item grid-item--width2">...</div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item--height2"></div>
        <div masonry-tile class="grid-item">...</div>
        <div masonry-tile class="grid-item grid-item--width2">...</div>
        <div masonry-tile class="grid-item">...</div>
    </div>


调用页面底部的脚本:

<script src="scripts/directives/angular-masonry-directive.js"></script>


相关页面的URL:
http://marcmurray.net/test_sites/card_site/index.html

错误图片:
http://i.imgur.com/G9GVrYR.png

柱塞:
https://plnkr.co/edit/vzhUUtKtrZWxCwMITOL6?p=preview

最佳答案

错误显示ReferenceError: Masonry is not defined-因此问题与directive无关-这是因为Masonry()不存在-我认为您缺少http://masonry.desandro.com/

这是问题所在:var masonry = scope.masonry = new Masonry(container, options);

10-01 07:20
查看更多