如果我在角度4的shared.module中使用import { Renderer2 } from '@angular/core';
,
为什么我也不能在导入数组中添加它,例如:
@NgModule({
imports: [
Renderer2,
...
]
在导入中添加它会产生错误。这就是我需要Renderer2的原因:
myComponent.html(我的shared.module的一部分):
<input #searchElem type="text">
myComponent.ts
constructor(private renderer: Renderer2) {
}
const element = this.renderer.selectRootElement('#searchElem');
setTimeout(() => element.focus(), 0);
这样做是为了能够设置元素的焦点。
答案 0 :(得分:1)
Renderer2
是Angular核心的可注射(服务)部分。它不是一个模块。 import property in @NgModule
is to import other modules。{{3}}。您应该能够以组件方式使用Renderer2
,但只需将其从模块导入中删除即可。
答案 1 :(得分:0)
imports
imports描述了此模块具有的依赖项。 如果您的模块依赖于其他模块,请在此处列出。示例
imports: [
BrowserModule, HttpClientModule,DataTableModule, AppRoutingModule,
],
简短的回答是,如果你要去,你会在你的NgModule的导入中添加一些东西 在模板中使用它或使用依赖注入。
import
语句用于导入其他打字稿文件和类
import {className} from 'filePath';