我有一個使用了兩個輔助類中的一個,像一個組件:如何注入輔助類動態
import {HelperA} ...
import {HelperB} ...
...
@Component({..})
export class MyComponent implements OnInit {
helper: Helper;
constructor(private ref: ElementRef, private device: MyDeviceDetectionService) {}
ngOnInit() {
if (this.device.isMobile) {
this.helper = new HelperA(this.ref);
} else {
this.helper = new HelperB(this.ref);
}
}
}
我意識到,這是很難的單元測試,所以我怎麼能注入這些?理想情況下,我只需要其中一個,具體取決於isMobile
是真是假。
更新'HelperA'和'HelperB'的代碼 – Aravind
如何將他們重構爲基類?沒有注射,他們總是在那裏,等我的問題,你有什麼問題與測試? – SayusiAndo
我不能嘲笑直接導入的類(據我所知) –