anchor.diff:    Like `getHeroes`, it also returns a !{_Promise}. 
     But this !{_Promise} waits 2 seconds before resolving the !{_Promise} with mock heroes.
     
  -  像`getHeroes`一样，它也返回一个Promise。
  -  但是，这个Promise会在提供模拟数据之前等待两秒钟。
  +  像`getHeroes`一样，它也返回一个承诺。
  +  但是，这个承诺会在提供模拟数据之前等待两秒钟。
     
     Back in the `AppComponent`, replace `heroService.getHeroes` with `heroService.getHeroesSlowly`
     and see how the app behaves.
  
positive.code:   Because data services are invariably asynchronous, 
    we'll finish the chapter with a **!{_Promise}**-based version of the data service.
  
    因为数据服务通常都是异步的，我们将在本章创建一个基于**Promise**的数据服务。
  
    Run the <live-example></live-example> for this part.
  
  
negative.code:   
    We'll use *!{_Promise}s*.
    
    我们将使用 *承诺* 。
    
    ### The Hero Service makes a !{_Promise}  
    
    ### `HeroService`会生成一个承诺
  
    A **!{_Promise}** is ... well it's a promise to call us back later when the results are ready. 
    We ask an asynchronous service to do some work and give it a callback function. 
    It does that work (somewhere) and eventually it calls our function with the results of the work or an error.
    
    **承诺** 就是 …… 好吧，它就是一个承诺 —— 在有了结果时，它承诺会回调我们。
    我们请求一个异步服务去做点什么，并且给它一个回调函数。
    它会去做(在某个地方)，一旦完成，它就会调用我们的回调函数，并通过参数把工作结果或者错误信息传给我们。
    
  