1

我不太了解 OOPS 模式。

我以前曾在 react 中工作过,但从未达到需要依赖注入和反转的地步(或任何使用它的人)。

我正在浏览Theia Ide 扩展文档并且很难理解这个片段

export const HelloWorldCommand = {
    id: 'HelloWorld.command',
    label: "Shows a message"
};

@injectable()
export class HelloWorldCommandContribution implements CommandContribution {

    constructor(
        @inject(MessageService) private readonly messageService: MessageService,
    ) { }

    registerCommands(registry: CommandRegistry): void {
        registry.registerCommand(HelloWorldCommand, {
            execute: () => this.messageService.info('Hello World!')
        });
    }
}

有人可以解释我可注入和注入(或上面的代码片段吗?)

根据我对 DI 的模糊理解,我们在类中传递依赖项,而不是在构造函数中导入和初始化它。

angular docs中,提到了

使用 TypeScript 时,@Inject 仅用于注入原语。

我不确定原语在这里是什么意思

这个类似的问题似乎更像是理论上的并且难以理解:@Injectable() 和 @Inject 中的差异是什么

4

0 回答 0