AngularJS – 如何在我的javascript解析之前存在ng-repeat中的项目?

前端之家收集整理的这篇文章主要介绍了AngularJS – 如何在我的javascript解析之前存在ng-repeat中的项目?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些初始静态项目,并且稍后会在永无止境的滚动类型情况下加载更多相同类型的动态项目.这在我的网页中非常有效,没有初始静态项目,但现在我想添加它们,因为它们包含非常好的可抓取内容.

我的第一个想法是在静态内容之后简单地开始我的ng-repeat.然而,这对我的页面不起作用,因为有基于我想要附加到此静态内容的模型的过滤选项和隐藏/显示.像这样的东西:

<li>
    <a href="path/">How to jump rope</a>
    <p truncate-directive>This article is about jump roping lorem ispum dolor amet...</p>
    <a ng-show="item.admin">edit</a>
</li>
<li ng-repeat="item in items">
    <a>{{item.title}}</a>
    <p truncate-directive>{{item.description}}</p>
    <a ng-show="item.admin">edit</a>
</li>

第二个li附加了模型,第一个没有并且超出了模型的范围,所以我不能使用angularJS对它进行排序,过滤它等.

我不介意用自己的动态版本编写静态项目,如果这样可以更容易.在JavaScript解析之前,我只想在页面加载的某些项目的可爬行/静态版本.

我不知道怎么做.

解决方法

一种可能的解决方案是手动将静态内容放在页面上(就像在第一个li中一样)然后使用类似ng-hide =“true”的内容在角度开始解析页面时立即隐藏内容.这将允许抓取工具查看信息,但会阻止它显示用户.然后,只需将静态内容添加到模型中,并允许它与动态内容一起加载.

另外,感谢check_ca提供了Google’s guide to making AJAX pages crawlable链接

猜你在找的Angularjs相关文章