Angular CLI 2错误无法通过AOT生成解析XXXXX的所有参数 [英] Angular cli 2 Error Can't resolve all parameters for XXXXX by AOT build

查看:94
本文介绍了Angular CLI 2错误无法通过AOT生成解析XXXXX的所有参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

            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

无法解析D:/Git/xxxxxxx/Application/Htm l5/src/app/shared/service/search/program-intelligent-search.ts: ([object Object], [object Object], ?, ?, ?)

ERROR in Can't resolve all parameters for ProgramIntelligentSearch in D:/Git/xxxxxxx/Application/Htm l5/src/app/shared/service/search/program-intelligent-search.ts: ([object Object], [object Object], ?, ?, ?)

./src/main.ts中的错误 找不到模块:错误:无法解析'D:\ Git \ cosmos-main-html5 \ App中的'./$$_gendir/app/app.app.module.ngfactory' lication \ Html5 \ src' @ ./src/main.ts 4:0-74 @ multi ./src/main.ts

ERROR in ./src/main.ts Module not found: Error: Can't resolve './$$_gendir/app/app.module.ngfactory' in 'D:\Git\cosmos-main-html5\App lication\Html5\src' @ ./src/main.ts 4:0-74 @ multi ./src/main.ts

推荐答案

您将必须添加@Inject,以便可以解决其依赖性.

You will have to add @Inject so that its dependency can be resolved.

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

So for custom services inside your service Inject its dependency with @Inject

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

In your code replace your custom services with

@Inject(ProgramService) private programService: ProgramService, @Inject(CacheService) private cacheService: CacheService,

您可以从此博客中深入了解它. https://blog. Thoughtram.io/angular/2015/09/17/resolve-service-dependencies-in-angular-2.html

You can understand it deeply from this blog. https://blog.thoughtram.io/angular/2015/09/17/resolve-service-dependencies-in-angular-2.html

这篇关于Angular CLI 2错误无法通过AOT生成解析XXXXX的所有参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆