Angular 依賴注入語法進化論 🚀
從前從前... (Angular 15 之前)
在 Angular 的古代時期,是這樣注入依賴的:
constructor(private masterService: MasterService) {}
現代化改革!(Angular 15+)
新時代的注入方式簡單又時髦:
private masterService = inject(MasterService);
為什麼要改變?🤔
優點解析
👍 程式碼更簡潔俐落
🎯 避免建構函數排序的惱人問題
🎪 更好地支援 Standalone Components
🔧 提供更靈活的依賴注入方式
實戰範例
import { Component, inject } from '@angular/core';
import { MasterService } from './master.service';
@Component({
selector: 'app-cool-feature',
template: `
<div>我是個很酷的功能!</div>
`
})
export class CoolFeatureComponent {
private masterService = inject(MasterService);
doSomethingCool() {
this.masterService.beAwesome();
}
}
小提醒 ⚠️
別忘了 import { inject } from '@angular/core'
新舊語法都能用,但推薦使用新語法
特別適合搭配 Standalone Components 使用
結論
新的 inject 語法不只是語法糖,更是 Angular 現代化的重要一步。簡單、靈活、好用,不用白不用! 🎉
Last updated