[Angular-Scaled Web] 8. Using $http to load JSON data

Using the $http service to make requests to remote servers. 

 

categories-model.js:

angular.module(‘eggly.models.categories‘, [

])
    .service(‘CategoriesModel‘, function ($http, $q) {
        var CategoriesModel = {},
            URLS = {
                FETCH: ‘data/categories.json‘
            },
            categories;


        function extract(result) {
            return result.data;
        }

        function cacheCategories(result) {
            categories = extract(result);
            return categories;
        }

        CategoriesModel.getCategories = function() {
            return (categories) ? $q.when(categories) : $http.get(URLS.FETCH).then(cacheCategories);
        };

        return CategoriesModel;
    })
;

 

bookmarks-model.js

angular.module(‘eggly.models.bookmarks‘, [

])
    .service(‘BookmarksModel‘, function($http){
        var model = this,
            URLS = {
                FETCH: ‘data/bookmarks.json‘
            },
            bookmarks;

        function extract(result) {
            return result.data;
        }

        function cacheBookmarks(result) {
            bookmarks = extract(result);
            return bookmarks;
        }

        model.getBookmarks = function() {
            return $http.get(URLS.FETCH).then(cacheBookmarks);
        };
    })

;

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。