Удалите инжекты из конструктора - «Пожалуйста, добавьте аннотацию @ Pipe / @ Directive / @ Component». - PullRequest
0 голосов
/ 03 мая 2018

Я прочитал все остальные вопросы, которые нашел здесь, но мне ничего не помогает (

У меня есть гибридное приложение

"@angular/common": "4.4.6",
"@angular/compiler": "4.4.6",
"@angular/core": "4.4.6",
"@angular/router": "4.4.6",
"@angular/upgrade": "4.4.6",
"angular": "1.5.8",

Все работало нормально, но вдруг я добавил новый компонент и модуль

Модуль:

import {NgModule} from '@angular/core';
import {CommonModule} from '@angular/common';
import {KekComponent} from './kek.component';

@NgModule({
    imports: [
        CommonModule,
    ],
    exports: [KekComponent
    ],
    declarations: [
        KekComponent
    ],
    providers: []
})
export class KekModule {
}

компонент:

import {Component} from '@angular/core';

@Component({
    selector: 'kek',
    template: 'div'
})
export class KekComponent {

    constructor() {
    }
}

И я получаю эту ошибку Unexpected value 'KekComponent' declared by the module 'KekModule'. Please add a @Pipe/@Directive/@Component annotation.

Нет опечаток (код скопирован), ничего больше. Где мне искать решение?

1 Ответ

0 голосов
/ 07 мая 2018

Оказалось, что у меня был такой код

import {NgModule, forwardRef} from '@angular/core';
import {KekModule} from './kek.module.ts';
import {UpgradeAdapter} from '@angular/upgrade';

и решение было в меняя их порядок

import {NgModule, forwardRef} from '@angular/core';
import {UpgradeAdapter} from '@angular/upgrade';
import {KekModule} from './kek.module.ts';

лицевые гибридные приложения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...