patch: patching up testing.jade up to speed, line 1410.
This commit is contained in:
parent
a809a5922e
commit
642633d0aa
|
@ -1130,9 +1130,8 @@ a(href="#top").to-top 回到顶部
|
||||||
|
|
||||||
你**可以**通过`TestBed.get`方法来从根注入器中获取服务。
|
你**可以**通过`TestBed.get`方法来从根注入器中获取服务。
|
||||||
它更容易被记住,也更加简介。
|
它更容易被记住,也更加简介。
|
||||||
But it only works when Angular injects the component with the service instance in the test's root injector.
|
但是它只有在Angular使用测试的根注入器的那个服务实例来注入到组件才有效。
|
||||||
Fortunately, in this test suite, the _only_ provider of `UserService` is the root testing module,
|
幸运的是,在这个测试套件中,**唯一**的`UserService`提供商就是根测试模块,所以像下面这样调用`TestBed.get`很安全:
|
||||||
so it is safe to call `TestBed.get` as follows:
|
|
||||||
|
|
||||||
+makeExample('testing/ts/app/welcome.component.spec.ts', 'inject-from-testbed', 'TestBed injector')(format='.')
|
+makeExample('testing/ts/app/welcome.component.spec.ts', 'inject-from-testbed', 'TestBed injector')(format='.')
|
||||||
.l-sub-section
|
.l-sub-section
|
||||||
|
@ -1143,13 +1142,23 @@ a(href="#top").to-top 回到顶部
|
||||||
|
|
||||||
See the section "[_Override Component Providers_](#component-override)" for a use case
|
See the section "[_Override Component Providers_](#component-override)" for a use case
|
||||||
in which `inject` and `TestBed.get` do not work and you must get the service from the component's injector.
|
in which `inject` and `TestBed.get` do not work and you must get the service from the component's injector.
|
||||||
|
|
||||||
|
到“[**替换组件提供商**](#component-override)”查看`inject`和`TestBed.get`无效、必须从组件的注入器获取服务的用例。
|
||||||
|
|
||||||
:marked
|
:marked
|
||||||
### Always get the service from an injector
|
### Always get the service from an injector
|
||||||
|
|
||||||
|
### 总是从一个注入器获取服务
|
||||||
|
|
||||||
Surprisingly, you dare not reference the `userServiceStub` object
|
Surprisingly, you dare not reference the `userServiceStub` object
|
||||||
that was provided to the testing module in the body of your test.
|
that was provided to the testing module in the body of your test.
|
||||||
**It does not work!**
|
**It does not work!**
|
||||||
The `userService` instance injected into the component is a completely _different_ object,
|
The `userService` instance injected into the component is a completely _different_ object,
|
||||||
a clone of the provided `userServiceStub`.
|
a clone of the provided `userServiceStub`.
|
||||||
|
|
||||||
|
出人意料的是,你不敢引用测试代码里提供给测试模块`userServiceStub`对象。**它是行不通的!**。
|
||||||
|
被注入组件的`userService`实例是一个彻底**不一样**的对象,是提供的`userServiceStub`的克隆。
|
||||||
|
|
||||||
+makeExample('testing/ts/app/welcome.component.spec.ts', 'stub-not-injected')(format='.')
|
+makeExample('testing/ts/app/welcome.component.spec.ts', 'stub-not-injected')(format='.')
|
||||||
|
|
||||||
#welcome-spec-setup
|
#welcome-spec-setup
|
||||||
|
|
Loading…
Reference in New Issue