patch up: ngmodule-faq

This commit is contained in:
rexebin 2016-10-18 19:44:54 +01:00
parent 8202c332c2
commit 7a894d6434
1 changed files with 40 additions and 2 deletions

View File

@ -1328,7 +1328,7 @@ table
td(style="vertical-align: top") td(style="vertical-align: top")
<a id="routed-feature-module"></a> <a id="routed-feature-module"></a>
p Routed p Routed
p 路由 p 路由特性模块
td td
:marked :marked
_Routed Feature Modules_ are _Domain Feature modules_ _Routed Feature Modules_ are _Domain Feature modules_
@ -1376,42 +1376,80 @@ table
不要在路由特性模块及其导入的模块中提供*全应用级*的单例服务。 不要在路由特性模块及其导入的模块中提供*全应用级*的单例服务。
tr tr
td(style="vertical-align: top")<a id="routing-module"></a>Routing td(style="vertical-align: top")<a id="routing-module"></a>
:marked
Routing
路由模块
td td
:marked :marked
A [_Routing Module_](../guide/router.html#routing-module) **provides routing configuration** for another module. A [_Routing Module_](../guide/router.html#routing-module) **provides routing configuration** for another module.
[路由模块](../guide/router.html#routing-module)为其它模块**提供路由配置**。
A Routing Module separates routing concerns from its companion module. A Routing Module separates routing concerns from its companion module.
路由模块将路由配置从它的关联模块分离开来。
It typically: It typically:
它一般:
* defines routes * defines routes
* 定义路由
* adds router configuration to the module's `imports` * adds router configuration to the module's `imports`
* 添加路由配置到模块的`imports`中
* re-exports `RouterModule` * re-exports `RouterModule`
* 重新导出`RouterModule`
* adds guard and resolver service providers to the module's `providers`. * adds guard and resolver service providers to the module's `providers`.
* 添加守卫和解析器服务提供商到模块的`providers`。
The name of the Routing Module should parallel the name of its companion module, using the suffix "Routing". The name of the Routing Module should parallel the name of its companion module, using the suffix "Routing".
For example, `FooModule` in `foo.module.ts` has a routing module named `FooRoutingModule` For example, `FooModule` in `foo.module.ts` has a routing module named `FooRoutingModule`
in `foo-routing.module.ts` in `foo-routing.module.ts`
路由模块的名字应该和它的关联模块平行比如使用“Routing”前缀
`foo.module.ts`中的`FooModule`有名为`FooRoutingModule`的路由模块,所属文件名为`foo-routing.module.ts`。
If the companion module is the _root_ `AppModule`, If the companion module is the _root_ `AppModule`,
the `AppRoutingModule` adds router configuration to its `imports` with `RouterModule.forRoot(routes)`. the `AppRoutingModule` adds router configuration to its `imports` with `RouterModule.forRoot(routes)`.
All other Routing Modules are children that import `RouterModule.forChild(routes)`. All other Routing Modules are children that import `RouterModule.forChild(routes)`.
如果关联模块是**根**`AppModule`,那么在`AppRoutingModule`的`imports`中,添加`RouterModule.forRoot(routes)`来配置路由。
所有其它路由模块都是子级,导入`RouterModule.forChild(routes)`。
A Routing Module re-exports the `RouterModule` as a convenience A Routing Module re-exports the `RouterModule` as a convenience
so that components of the companion module have access to so that components of the companion module have access to
router directives such as `RouterLink` and `RouterOutlet`. router directives such as `RouterLink` and `RouterOutlet`.
路由模块顺便重新导出`RouterModule`,这样关联模块的组件可以访问路由指令,比如`RouterLink`和`RouterOutlet`。
A Routing Module **should not have its own `declarations`!** A Routing Module **should not have its own `declarations`!**
&nbsp; Components, directives, and pipes are the **responsibility of the feature module** &nbsp; Components, directives, and pipes are the **responsibility of the feature module**
not the _routing_ module. not the _routing_ module.
路由模块**不应该有自己的`declarations`**。组件、指令和管道是**特性模块的责任**,不属于路由模块。
A Routing Module should _only_ be imported by its companion module. A Routing Module should _only_ be imported by its companion module.
路由模块应该**只**被它的关联模块导入。
The `AppRoutingModule`, `ContactRoutingModule` and `HeroRoutingModule` are good examples. The `AppRoutingModule`, `ContactRoutingModule` and `HeroRoutingModule` are good examples.
`AppRoutingModule`、`ContactRoutingModule`和`HeroRoutingModule是很好的例子。
.l-sub-section .l-sub-section
:marked :marked
See also "[Do you need a _Routing Module_?](../guide/router.html#why-routing-module)". See also "[Do you need a _Routing Module_?](../guide/router.html#why-routing-module)".
参见"[你需要**路由模块**吗?](../guide/router.html#why-routing-module)"
tr tr
td(style="vertical-align: top") td(style="vertical-align: top")
<a id="service-feature-module"></a> <a id="service-feature-module"></a>