我正在将angular1项目从javascript迁移到打字稿,并希望添加到overloaded $injector.get method中以包括项目自己的可注入类型。我在合并接口上阅读了this typescript doc。我将其添加到导入的d.ts文件中:
import TrendDisplayService from 'services/TrendDisplayService';
declare namespace angular {
export module ng.auto {
export interface IInjectorService {
get(name: 'trendDisplayService'): TrendDisplayService
}
}
}
但是,在执行以下操作时,我仍然看到“无法分配”的类型错误:
let trend:TrendDisplayService = $injector.get('trendDisplayService');
有什么想法吗?
最佳答案
在声明模块中,应该是auto而不是ng.auto。
declare namespace angular {
export module auto {
export interface IInjectorService {
get(name: 'trendDisplayService'): TrendDisplayService
}
}
}