-1
app.factory('WeatherApi', function($http) {
var obj = {};
obj.getLoc = function() {
return $http.jsonp("http://ipinfo.io/json?callback=JSON_CALLBACK");
};
obj.getCurrent = function(city) {
var api = "http://api.openweathermap.org/data/2.5/weather?q=";
var units = "&units=metric";
var appid = "&APPID=061f24cf3cde2f60644a8240302983f2"
var cb = "&callback=JSON_CALLBACK";
return $http.jsonp(api + city + units+ appid + cb);
};
return obj
});
有人可以解釋這塊代碼的作用嗎?我不明白所有不同的變量是什麼。 obj.getLoc到底做了什麼?這是否意味着它創建了一個函數。那麼他們都會在最後形成一個鏈接,然後json搜索被拉起的網頁的數據?Javascript角度工廠解釋
這是兩個函數中的角應用程序的其餘部分是可用的。他們必須由應用程序的其他部分調用。閱讀[關於$ http的角度文檔](https://docs.angularjs.org/api/ng/service/$http),你就會明白這些函數的作用:'getLoc' - 對ipinfo進行AJAX調用,它是提供有關瀏覽器IP地址的地理位置數據的Web服務。 'getCurrent'嘗試對openweathermap.org進行AJAX調用,獲取有關給定城市的天氣信息。 –