在Angular中,我们可以使用ng probe
命令来获取与注射器一起使用的令牌引用。下面是一个包含代码示例的解决方法:
@angular/cli
。如果没有安装,可以使用以下命令进行安装:npm install -g @angular/cli
ng new my-app
cd my-app
ng generate component my-component
my-component.component.ts
文件中,添加以下代码:import { Component, OnInit, Inject, Injector } from '@angular/core';
@Component({
selector: 'app-my-component',
template: 'My Component
'
})
export class MyComponentComponent implements OnInit {
constructor(@Inject(Injector) private injector: Injector) { }
ngOnInit(): void {
// 使用ng probe获取与注射器一起使用的令牌引用
const myService = this.injector.get(MyService);
console.log(myService);
}
}
class MyService {
name = 'My Service';
}
app.module.ts
文件中,添加以下代码:import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { MyComponentComponent } from './my-component/my-component.component';
@NgModule({
declarations: [
AppComponent,
MyComponentComponent
],
imports: [
BrowserModule
],
providers: [MyService],
bootstrap: [AppComponent]
})
export class AppModule { }
app.component.html
文件中,添加以下代码:
ng serve
http://localhost:4200
,在浏览器控制台中,你将看到My Service
的输出。这样,你就可以使用ng probe
命令来获取与注射器一起使用的令牌引用了。在上面的示例中,我们通过注入Injector
并使用get
方法来获取MyService
的实例。