[英]How to compile multiple typescript files into one javascript file with Gulp?
[英]Call to Compile Multiple JSON Files in One
现在,这可能是理论上的问题,由于我仍在学习AngularJS,请原谅我笨手笨脚。
有没有一种方法可以使Angular在不同位置调用3个json文件,并且它们都具有相同的布局,然后一次调用“编译”或“加载”一个文件,以增加加载时间?
可以说我们有3个json文件:
第一个JSON文件:
{
"name": "John",
"sur": "Smith"
}
第二个JSON文件:
{
"name": "John",
"sur": "Doe"
}
第三个JSON文件:
{
"name": "Alice",
"sur": "Mulder"
}
使用ng-repeat
调用它们并显示它们的最有效,最快的方法是什么? 从理论上讲,可以在我们决定使用表达式将它们输入到html中之前,将它们编译到一个“临时json文件”中吗?
最终,您将需要将单个数组绑定到视图。 此ng-repeat
将遍历数组中的每个项目,并将每个对象漂亮地打印到<pre/>
:
<div ng-app="myApp">
<div ng-controller="MyCtrl">
<div ng-repeat="entry in entries">
<pre ng-bind="entry | json"></pre>
</div>
</div>
</div>
同时开始3个$http.get()
请求(显然,您可以将它们更改为file1.json
, file2.json
等)。
每个$http.get()
承诺在完成时都会给我们一个response
对象。 实际上,我们实际上需要的是response.data
(将响应,解析为JSON)给我们,因此Array.prototype.map()
您对response
每一个承诺,因此它变成了对response.data
的承诺。
然后使用$q.all()
等待所有这些承诺完成。
$q.all()
承诺完成后:我们将获得JSON响应数组。 将该模型添加到我们的$scope
。
var myApp = angular.module('myApp',[]);
myApp.controller('MyCtrl', function($scope, $http, $q) {
$q.all(
[
$http.get('https://httpbin.org/get'),
$http.get('https://httpbin.org/get'),
$http.get('https://httpbin.org/get')
]
.map(function(promise) {
return promise
.success(function(response) {
return response.data;
})
})
)
.then(function(multipleJson) {
$scope.entries = multipleJson;
})
});
普鲁克在这里 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.