在Angular中,@Injectable()
装饰器用于将服务类标记为可注入的依赖项。而@Component
装饰器用于将组件类标记为一个组件,同时定义了组件的模板、样式和元数据。
下面是一个示例代码,展示了如何使用@Injectable()
和@Component
装饰器:
import { Injectable, Component } from '@angular/core';
@Injectable()
export class MyService {
// 服务类代码...
}
@Component({
selector: 'my-component',
template: `
Hello Angular!
`,
styles: [`
h1 {
color: red;
}
`]
})
export class MyComponent {
// 组件类代码...
}
在上面的示例中,MyService
是一个注入器类,使用了@Injectable()
装饰器来标记它为可注入的。而MyComponent
是一个组件类,使用了@Component
装饰器来定义它的选择器、模板和样式。
要注意的是,@Injectable()
装饰器在服务类上是可选的,但是建议使用它来明确标记服务类的注入行为。而@Component
装饰器在组件类上是必需的,因为它告诉Angular这是一个组件,并提供了组件的模板和样式。