1. 创建一个Service,去服务器读取数据:

  1. // $q 是内置服务,所以可以直接使用
  2. ngApp.factory('UserInfo', ['$http', '$q', function ($http, $q) {
  3. return {
  4. query : function() {
  5. var deferred = $q.defer(); // 声明延后执行,表示要去监控后面的执行
  6. $http({method: 'GET', url: 'scripts/mine.json'}).
  7. success(function(data, status, headers, config) {
  8. deferred.resolve(data);  // 声明执行成功,即http请求数据成功,可以返回数据了
  9. }).
  10. error(function(data, status, headers, config) {
  11. deferred.reject(data);   // 声明执行失败,即服务器返回错误
  12. });
  13. return deferred.promise;   // 返回承诺,这里并不是最终数据,而是访问最终数据的API
  14. } // end query
  15. };
  16. }]);

2. 在Controller上(以同步方式)使用这个Service:

  1. angular.module('ngApp')
  2. .controller('MainCtrl', ['$scope', 'UserInfo', function ($scope, UserInfo) { // 引用我们定义的UserInfo服务
  3. var promise = UserInfo.query(); // 同步调用,获得承诺接口
  4. promise.then(function(data) {  // 调用承诺API获取数据 .resolve
  5. $scope.user = data;
  6. }, function(data) {  // 处理错误 .reject
  7. $scope.user = {error: '用户不存在!'};
  8. });
  9. }]);

随机推荐

  1. iOS开源项目:PullToRefresh

    PullToRefresh实现了类似微博下拉刷新的功能:https://github.com/sonnyparlin/PullToRefresh 首先把PullToRefreshView.h, Pul ...

  2. 关于FFmpegInterop项目的编译

    如果是从git 上下载的最新版本 FFmpeg,那么打开VS2015编译时会报出一个错误    C4996    'av_free_packet': 被声明为已否决    FFmpegInterop  ...

  3. windows服务器提权前请先执行systeminfo命令

    pr.巴西烤肉 对应补丁 好多朋友见到Windows服务器就祭出pr.巴西烤肉一气搞,忙完免杀又忙找可写目录,最后发现服务器打上了对应的补丁.笔者在提权前都会执行systeminfo命令,查看对应补丁 ...

  4. 自定义崩溃界面 CustomActivityOnCrash

    项目地址:https://github.com/Ereza/CustomActivityOnCrash The inner workings are based on ACRA's dialog re ...

  5. build path libraries java基础--Jar包添加到build path方式说明--01

    摘自: http://blog.csdn.net/haolongabc/article/details/7007701 java基础--Jar包添加到build path方式说明--01 前言:这段短 ...

  6. Linux CentOS7 系统目录详解

    1.目录结构 2.文件类型 LINUX有四种基本文件系统类型:普通文件.目录文件.连接文件和特殊文件,可用file命令来识别.  普通文件:如文本文件.C语言元代码.SHELL脚本.二进制的可执行文件 ...

  7. Android之旅 自我图示总结四大组件

    最近学完了Android的四大组件的基础知识,自己总结了一个图示,希望自己看到这个图的时候能回忆起相关的知识点,与大家分享!

  8. Graph Automata Player

    题目action=problem&type=show&id=12839&courseid=269">here 第一道高速幂.同一时候也是第一道高斯消元. 输入的 ...

  9. 矩阵的frobenius范数及其求偏导法则

    例子: http://www.mathchina.net/dvbbs/dispbbs.asp?boardid=4&Id=3673

  10. kCGImagePropertyExifDictionary 引用错误

    kCGImagePropertyExifDictionary 引用错误 使用 AVFoundation拍照 //获取图片 [outputImage captureStillImageAsynchron ...