Не удается передать переменную @Input в пакете Angular 5 npm (создан с использованием ng-packagr)

Я создал пакет npm из проекта Angular 5, используя ng-packagr, и теперь я пытаюсь установить этот пакет в новом проекте. Я включаю пакет в NgModule нового проекта и использую его так:

  <created-package 
    [input1]="'value1'"
    [input2]="'value2'"  
  >
  </created-package>

Этот компонент отображает, html и включенный css показаны, но поля @Input (input1 и input2) НЕ УКАЗАНЫ.

Это пример моего component.ts:

import {Component, ElementRef, Input, OnInit} from '@angular/core';

@Component({
  selector: 'created-package',
  templateUrl: './created-package.component.html'
})

export class CreatedPackage implements OnInit {
  @Input() value1: any;
  @Input() value2: any;


  constructor(private router: Router) {

  }

  ngOnInit() {
    console.log(this.value1, this.value2);

  }
}

Это console.logs не определено..

Если кто-нибудь знает ответ, буду очень благодарен за ответ! Спасибо!

1 ответ

Ваши входные переменные внутри компонента должны иметь совпадающее имя с тем, что передается в html, или вы можете передать псевдоним @Input ().

либо изменить:

 <created-package 
    [value1]="'value1'"
    [value2]="'value2'"  
 >
 </created-package>

или же:

@Input('input1') value1: any;
@Input('input2') value2: any;
Другие вопросы по тегам