anchor.diff:  :marked
     Next we update the `directives` and `providers` metadata arrays to *include* the router assets.
     
  -  接下来，我们我们更新`directives`和`providers`元数据数组，来包含这些路由器部件。
  +  接下来，我们要更新`directives`和`providers`元数据数组，来包含这些路由器部件。
   +makeExample('toh-5/ts/app/app.component.2.ts', 'directives-and-providers', 'app.component.ts (directives和providers)')(format=".")
   :marked
     Notice that we also removed the `HeroesComponent` from the `directives` array.
     `AppComponent` no longer shows heroes; that will be the router's job. 
     We'll soon remove `<my-heroes>` from the template too.
     
  -  注意，我们已经从`directives`数组中移除了`HeroesComponent`。`AppComponent`不会再显示英雄，那是路由器的工作。
  +  注意，我们已经从`directives`数组中移除了`HeroesComponent`。`AppComponent`不会再显示英雄了，那是路由器的工作。
     我们马上也会从模板中移除`<my-heroes>`。
     
     ### Add and configure the router
  
positive.code:   the router should match it to the `'Heroes'` route and display the `HeroesComponent`.
    But where?
    
    如果我们把路径`/heroes`粘贴到浏览器的地址栏中，路由器会匹配到`'Heroes'`路由，并显示`HeroesComponent`组件。
    但问题是，把它显示在哪儿呢？
    
    We have to ***tell it where*** by adding `<router-outlet>` marker tags to the bottom of the template.
    `RouterOutlet` is one of the `ROUTER_DIRECTIVES`.
    The router displays each component immediately below the `<router-outlet>` as we navigate through the application.
    
    我们必须 ***告诉它位置*** ，所以我们把`<router-outlet>`标签添加到模板的底部。
    `RouterOutlet`是`ROUTER_DIRECTIVES`常量中的一员。
    当我们通过应用导航过来时，路由器立即把每个组件显示在`<router-outlet>`的位置。
    
    ### Router Links
    ### 路由器链接
    We don't really expect users to paste a route URL into the address bar.
    We add an anchor tag to the template which, when clicked, triggers navigation to the `HeroesComponent`.
    
    我们不可能真等用户把路由的URL粘贴到地址栏中，我们应该在模板中的什么地方添加一个A链接标签，点击时，就会触发导航到`HeroesComponent`组件的操作。
    
    The revised template looks like this:
    
  
negative.code:   We wrote *link parameters arrays* in the `AppComponent` for the navigation links.
    Those arrays had only one element, the name of the destination route.
    
    我们当初在`AppComponent`中生成导航链接的时候曾写过*链接参数数组*。
    
    This array has two elements, the ***name*** of the destination route and a ***route parameter object*** 
    with an `id` field set to the value of the selected hero's `id`.
    
    这个数组有两个元素，目标路由的***名称(name)***，和一个***路由参数对象***，其中包括一个`id`字段，它的取值是所选英雄的`id`。
    
    The two array items align with the ***name*** and ***:id*** token in the parameterized `HeroDetail` route configuration we added to `AppComponent` earlier in the chapter.
    
    当初我们在`AppComponent`中添加路由的时候，这两个数组元素以***name***和***:id***为代号被参数化的`HeroDetail`路由配置对象中。
  +makeExample('toh-5/ts/app/app.component.ts','hero-detail-route', 'app/app.component.ts (英雄详情路由)')(format=".")
  :marked
    The `DashboardComponent` doesn't have the router yet. We obtain it in the usual way: 
  