Я новичок в Angular2. Я пытался создать компонент, но показывал ошибку.
Это app.component.ts
файл.
import { Component } from '@angular/core';
import { MyComponentComponent } from './my-component.component';
@Component({
selector: 'my-app',
template: `
<h1>Hello {{name}}</h1>
<h4>Something</h4>
<my-component></my-component>
`,
directives: [MyComponentComponent]
})
export class AppComponent { name = 'Sam' }
Это компонент, который я хочу создать.
import { Component } from '@angular/core';
@Component({
selector: 'my-component',
template: `
<p>This is my article</p>
`
})
export class MyComponentComponent {
}
Показаны две ошибки:
- Если
my-component
это компонент Angular, убедитесь, что он является частью этого модуля. - Если
my-component
это веб-компонент, добавьтеCUSTOM_ELEMENTS_SCHEMA
к@NgModule.schemas
этому компоненту, чтобы подавить это сообщение.
Пожалуйста помоги.
angular
typescript
Vimal
источник
источник
Может быть, это для имени
html
компонента тегаВы используете
html
что-то вроде этого<mycomponent></mycomponent>
Вы должны использовать это
<app-mycomponent></app-mycomponent>
источник
html
тега определяетselector
свойство. В этом случае естьmy-component
.вы импортируете это в свой
app.module.ts
подобном виде и удаляете бит директив: -У вас
MyComponentModule
должно быть так: -источник
exports
Проверьте свой селектор в своем имени файла.component.ts
Используя тег в различных html файлах, я бы сказал
Должно быть
пример
источник
В моем случае я писал модульные тесты для компонента, который использует подкомпоненты, и я писал тесты, чтобы убедиться, что эти подкомпоненты присутствуют в шаблоне:
Я получил не ошибку, а предупреждение:
Кроме того, подкомпонент не во время тестирования отображался в браузере.
Раньше я
ng g c newcomponent
генерировал все компоненты, поэтому они уже были объявлены в модуле приложения, но не в тестовом модуле, который для компонента, который я указывал.источник
Вы должны объявить свой MyComponentComponent в том же модуле вашего AppComponent.
источник
MyComponentComponent
вMyComponentModule
MyComponentComponent
кexports
атрибутуMyComponentModule
mycomponentModule.ts
MyComponentModule
в свойimports
атрибут AppModuleapp.module.ts
Важно. Если ошибка по-прежнему возникает, остановите сервер
ctrl+c
с терминала и запустите его снова.ng serve -o
источник
В моем случае у меня был компонент в общем модуле.
Компонент загружался и работал хорошо, но машинописный текст выделял тег html красной линией и отображал это сообщение об ошибке.
Я заметил, что внутри этого компонента не импортировал оператор rxjs.
Когда я добавил этот импорт, сообщение об ошибке исчезло.
Проверить весь импорт внутри компонента .
Надеюсь, это кому-то поможет.
источник
Проверить, в каком модуле объявляется родительский компонент ...
Если ваш родительский компонент определен в общем модуле, ваш дочерний модуль должен быть таким же.
Родительский компонент может быть объявлен в общем модуле, а не в модуле, который является логическим на основе структуры / именования файловых каталогов, даже в моем случае Angular CLI добавил его в неправильный модуль.
источник
Надеюсь, что у вас есть
app.module.ts
. В вашейapp.module.ts
строке добавления ниже -Как это:
источник
В свой components.module.ts вы должны импортировать IonicModule следующим образом:
import { IonicModule } from '@ionic/angular';
Затем импортируйте IonicModule следующим образом:
так что ваш components.module.ts будет таким:
источник
Не надо
export **default** class MyComponentComponent
!Связанная проблема, которая может подпадать под заголовок, если не под конкретный вопрос:
Я случайно сделал ...
... и это тоже напортачило.
Зачем? VS Code добавил импорт в мой модуль, когда я его вставил
declarations
, но вместо ...это было
И это не отображалось в нисходящем направлении, предположительно, поскольку оно «на самом деле» нигде не было названо при импорте по умолчанию.
Нет
default
. Прибыль.источник