Javascript 如果存在';这还不够吗?
我在ng repeat和ng if条件中有一个过滤器,每页的结果几乎总是少于10个(10个结果是我从API得到的) 我的想法是,在js文件中应该是一个有条件的循环 首先,我们声明变量,以便检查长度Javascript 如果存在';这还不够吗?,javascript,angularjs,api,pagination,Javascript,Angularjs,Api,Pagination,我在ng repeat和ng if条件中有一个过滤器,每页的结果几乎总是少于10个(10个结果是我从API得到的) 我的想法是,在js文件中应该是一个有条件的循环 首先,我们声明变量,以便检查长度 var numberOfArticlesOnPage = container.children.length console.log(numberOfArticlesOnPage) for (i = 0; numberOfArticl
var numberOfArticlesOnPage = container.children.length
console.log(numberOfArticlesOnPage)
for (i = 0; numberOfArticlesOnPage < 10); i++ {
$scope.pageNumber = $scope.pageNumber + 1
var i=1
i++
$http(
{
method: 'GET',
url:
//Here I put i instead of page number so it loads next page and every time we create results[i] with new number in the end
'https://api.nytimes.com/svc/search/v2/articlesearch.json?fq=news_desk:("Politics")&page=' + i + '&api-key=groQeNemKAhk7QjDWircgauo5jYVcwez', /* Most recent */
}).then(function successCallback(result) {
$scope.results[i] = result.data.response.docs;
}, function errorCallback(result) {
console.log("there's a error, man...");
});
//Check the length again
var container = document.querySelector(".container");
var numberOfArticlesOnPage = container.children.length```
//And that is the template where it should be shown
```<div class="container">
<div class="box" ng-repeat="result in results | filter : '!trump'" ng-if="result.multimedia[2].url != null">
<h2>{{result.headline.main}}</h2>
<p class="abstract">{{result.abstract}}</p>
<img src="https://static01.nyt.com/{{result.multimedia[0].url}}">
<p></p>
<a ui-sref="article ({
articleSlug:'{{result.headline.main | slugify}}',
title: '{{result.headline.main}}',
url: '{{result.web_url}}',
image: 'https://static01.nyt.com/{{result.multimedia[0].url}}',
externalUrl: '{{result.url}}'
})">Read more...</a>
</div>
</div>```
//But I don't know how to write a code in the template so it can take more data?
var numberOfArticlesOnPage=container.childrence.length
console.log(numberOfArticlesOnPage)
对于(i=0;第页文章数<10);i++{
$scope.pageNumber=$scope.pageNumber+1
变量i=1
我++
$http(
{
方法:“GET”,
网址:
//在这里,我用I代替页码,这样它就会加载下一页,每次我们在最后用新的页码创建结果[I]
'https://api.nytimes.com/svc/search/v2/articlesearch.json?fq=news_desk:(“政治”)&page='+i+'&api key=groqenemkak7qjdwircgauo5jyvcwez',/*最近*/
}).then(函数成功回调(结果){
$scope.results[i]=result.data.response.docs;
},函数errorCallback(结果){
log(“有一个错误,伙计…”);
});
//再次检查长度
var container=document.querySelector(“.container”);
var numberOfArticlesOnPage=container.childrence.length```
//这就是它应该显示的模板
```
{{result.headline.main}
{{result.abstract}
阅读更多。。。
```
//但我不知道如何在模板中编写代码,以便它可以容纳更多数据?
ng mess…如果您正在进行分页,并且数据来自服务器,并且您需要的不仅仅是基本的下一步/下一步,那么您必须在服务器端执行所有排序筛选,否则会得到意外的结果。我确实需要基本的下一步/下一步:)这应该是一些简单的网站,但您必须使用api提供的筛选:即trump should被传递到?fq=新闻台:(“政治”)和正文:(YOURFILTER)
否则,如果你过滤掉客户端,它不会神奇地运行过滤服务器端并只显示结果,它将只在你的本地进行过滤,而特朗普可能不在该页面上,或者他将在所有页面上进行过滤,因此不会产生结果。获取meLawrence Cherone,你太棒了:D谢谢。这很有效