尝试在项目上使用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);