角度cli 2错误可能';t通过AOT生成解析XXXXX的所有参数 从'@angular/core'导入{Injectable,injection}; 从“rxjs/Subject”导入{Subject}; 从'ng2 completer'导入{CompleterData,CompleterItem}; 从“../program.service”导入{ProgramService}; 从'linq-es5'导入{asEnumerable}; 从“../../core/services/cache.service”导入{CacheService}; @可注射() 导出类程序智能搜索扩展主题实现CompleterData{ 构造函数(私有程序服务:程序服务, 专用缓存服务:缓存服务, @注入(数组)私有lessonTypes:Array, @注入(数组)私有程序类型:数组, @注入(数组)专用语言:数组 ) { 超级(); } -------------------------------------------------------------------------- 从“rxjs/Observable”导入{Observable}; 从“./components/completer项”导入{CompleteItem}; 导出接口CompleterData扩展了可观察的{ 搜索(术语:字符串):无效; 取消():作废; convertToItem?(数据:任意):CompleteItem; } ------------------------------------------------------------------ 使用ng build--prod--aot

角度cli 2错误可能';t通过AOT生成解析XXXXX的所有参数 从'@angular/core'导入{Injectable,injection}; 从“rxjs/Subject”导入{Subject}; 从'ng2 completer'导入{CompleterData,CompleterItem}; 从“../program.service”导入{ProgramService}; 从'linq-es5'导入{asEnumerable}; 从“../../core/services/cache.service”导入{CacheService}; @可注射() 导出类程序智能搜索扩展主题实现CompleterData{ 构造函数(私有程序服务:程序服务, 专用缓存服务:缓存服务, @注入(数组)私有lessonTypes:Array, @注入(数组)私有程序类型:数组, @注入(数组)专用语言:数组 ) { 超级(); } -------------------------------------------------------------------------- 从“rxjs/Observable”导入{Observable}; 从“./components/completer项”导入{CompleteItem}; 导出接口CompleterData扩展了可观察的{ 搜索(术语:字符串):无效; 取消():作废; convertToItem?(数据:任意):CompleteItem; } ------------------------------------------------------------------ 使用ng build--prod--aot,angular,typescript,Angular,Typescript,无法解析D:/Git/xxxxxxx/Application/Htm中programmintelligentsearch的所有参数时出错 l5/src/app/shared/service/search/program-intelligent-search.ts:([object-object],[object-object],?,?,?,?) ./src/main.ts中出现错误 未找到模块:错误:无法解析“D:\Git\cosmos-main-html5\app”中的“//$$\u gend

无法解析
D:/Git/xxxxxxx/Application/Htm中
programmintelligentsearch
的所有参数时出错 l5/src/app/shared/service/search/program-intelligent-search.ts:([object-object],[object-object],?,?,?,?)

./src/main.ts中出现错误 未找到模块:错误:无法解析“D:\Git\cosmos-main-html5\app”中的“//$$\u gendir/app/app.Module.ngfactory” 应用程序\Html5\src' @./src/main.ts 4:0-74 @multi./src/main.ts


您必须添加@Inject,以便解决其依赖关系

因此,对于服务中的自定义服务,使用@Inject注入其依赖项

在代码中,将自定义服务替换为

            import { Injectable, Inject } from '@angular/core';
            import { Subject } from "rxjs/Subject";
            import { CompleterData, CompleterItem } from 'ng2-completer';
            import { ProgramService } from '../program.service';
            import { asEnumerable } from 'linq-es5';
            import { CacheService } from '../../../core/services/cache.service';

            @Injectable()
            export class ProgramIntelligentSearch extends Subject<CompleterItem[]> implements CompleterData {
                constructor(private programService: ProgramService,
                    private cacheService: CacheService,
                    @Inject(Array) private lessonTypes: Array<any>,
                    @Inject(Array) private programTypes: Array<any>,
                    @Inject(Array) private languages: Array<any>
                    ) {
                    super();
                }
      --------------------------------------------------------------------------  
        import { Observable } from "rxjs/Observable";
        import { CompleterItem } from "../components/completer-item";
        export interface CompleterData extends Observable<CompleterItem[]> {
            search(term: string): void;
            cancel(): void;
            convertToItem?(data: any): CompleterItem;
        }
------------------------------------------------------------------
            Use ng build --prod --aot
你可以从这个博客中深刻地理解它。

您好,出现此问题的原因很多。请先查看此处,然后检查您的依赖关系。
@Inject(ProgramService)private ProgramService:ProgramService,@Inject(CacheService)private cacheService:cacheService,
这对您有用吗?谢谢您的回答。因为ProgramService和cacheService可以解析。但是其他数组参数无法解析。删除@Inject(数组)对于这些。@ParhGhiya,感谢您的支持,我已经解决了这个问题。因为Angular.Link中不支持泛型类型参数
@Inject(ProgramService) private programService: ProgramService, @Inject(CacheService) private cacheService: CacheService,