2016-10-12 7 views
0

Я изучаю Angular2 в течение короткого времени, все было в порядке. Недавно я попытался использовать Ionic 2 с Angular 2, но не могу использовать пользовательский компонент, который я создаю в своих файлах. Я уверен, что это простая ошибка с моей стороны, было интересно, может ли кто-нибудь сказать мне, что я делаю неправильно.Угловой 2 Компонентный вопрос

У меня есть базовый @Component с селектором 'contact-form', он ничего не делает, кроме создания формы в файле templateURL html.

В файле я хочу использовать этот компонент я импортировать компонент из ./path ...

я затем добавить директивы: [компонент я создал]

На данный момент я получаю ошибку:

if component is an angular component, verify it is part of this module

if component is a web component then add "CUSTOM_ELEMENTS_SCHEMA" to the @ngModule.schemas of this component.

У меня никогда не было этой проблемы при использовании приложения быстрого запуска, только в пределах ионного.

ответ

1

Ваши настройки больше не работают. В ранних версиях Angular 2 вы импортировали классы, которые будут использоваться в шаблоне вашего хост-компонента, и перечислите их в массиве Directives компонента хоста.

Теперь установка очень отличается. Есть еще look at the quickstart.

То, что вы хотите сделать, это список директива среди declarations массива модуля, который будет использовать его:

@NgModule({ 
    imports:  [ BrowserModule ], 
    declarations: [ AppComponent, CustomDirective ], 
    bootstrap: [ AppComponent ] 
}) 

После директивы (или компонент) объявлен как принадлежащий (или импортироваться в) NgModule, Angular будет знать, чтобы искать его в шаблонах. Поэтому вы можете просто начать использовать свою настраиваемую директиву/компоненту без необходимости импортировать ее в компонент хоста.

+0

Благодарим за ответ, курс udemy, который я использовал, не был соответствующим образом обновлен и использовал более старую версию углового файла 2. Поэтому, когда он учился, но когда я реализовал его в ионной версии с последней версией, это было проблемой. –