anchor.diff:    don't want the `<li>` click handler to be triggered because doing so would
     select the hero that the user will delete.
   
  -  除了调用组件的`delete`方法之外，这个`delete`按钮的点击处理器还应该阻止点击事件向上冒泡 &mdash;
  +  除了调用组件的`delete()`方法之外，这个删除按钮的点击处理器还应该阻止点击事件向上冒泡 &mdash;
     我们并不希望触发`<li>`的事件处理器，否则它会选中我们要删除的这位英雄。
   
     The logic of the `delete()` handler is a bit trickier:
   
  -  `delete`处理器的逻辑略复杂：
  +  `delete()`处理器的逻辑略复杂：
   
   +makeExample('toh-6/ts/src/app/heroes.component.ts', 'delete', 'src/app/heroes.component.ts (delete)')
   
  
positive.code:   Add the following `save()` method, which persists hero name changes using the hero service
    `update()` method and then navigates back to the previous view.
  
    `save`方法使用 hero 服务的`update`方法来持久化对英雄名字的修改，然后导航回前一个视图：
  
  +makeExample('toh-6/ts/src/app/hero-detail.component.ts', 'save', 'src/app/hero-detail.component.ts (save)')
  
  
negative.code:   This demo service logs the error to the console; in real life,
    you would handle the error in code. For a demo, this works.
    
    在这个范例服务中，我们把错误记录到控制台中；在真实世界中，我们应该用代码对错误进行处理。但对于演示来说，这就够了。
  
    The code also includes an error to
    the caller in a rejected promise, so that the caller can display a proper error message to the user.
  