gpt4 book ai didi

javascript - 使用不同文件中的 Angular Directive(指令)访问 js 文件中定义的变量

转载 作者:行者123 更新时间:2023-12-01 03:36:18 25 4
gpt4 key购买 nike

我有一个 js 文件来使用 Web 服务,在这里我定义了一个要在 ng-repeat 指令中使用的数组。这就是我现在所拥有的

html

<article ng-repeat="article in scopeArticles">
<h1 class="content">content is {{article.title}} </h1>
<img src="{{article.imgSource}}" href="{{article.source}}"/>
<p>{{article.description}}</p>
</article>

js文件

  var articles = [];

$(document).ready(function () {

$.ajax({
url: "https://newsapi.org/v1/articles?source=google-news&sortBy=top&apiKey=001034455"
}).then(function (data) {
$.each(data.articles, function (key, value) {
articles.push({
title: value.title,
description: value.description,
source: value.url,
imgSource: value.urlToImage,
date: value.publishedAt
});

})

})

});

最佳答案

在使用 AngularJS 时尝试忘记一点 jQuery。使用$http service获取您的数据。如果没有 Controller ,你的 html 将无法工作。

请参阅下面的工作示例(不要忘记将您的 API key 添加到 URL):

angular.module('app',[])
.controller("Ctrl",function($scope, $http){
var ctrl = this;

ctrl.articles = [];

$http.get(
'https://newsapi.org/v1/articles?source=google-news&sortBy=top&apiKey='
)
.then(function(response) {
angular.forEach(response.data.articles, function(value){
ctrl.articles.push({
title: value.title,
description: value.description,
source: value.url,
imgSource: value.urlToImage,
date: value.publishedAt
});
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>

<body ng-app="app" ng-controller="Ctrl as $ctrl">

<article ng-repeat="article in $ctrl.articles">
<h1 class="content">content is {{article.title}} </h1>
<img ng-src="{{article.imgSource}}" href="{{article.source}}"/>
<p>{{article.description}}</p>
</article>


</body>

关于javascript - 使用不同文件中的 Angular Directive(指令)访问 js 文件中定义的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44260419/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com