Как получить доступ к переменной экземпляра внутри компонентов, динамически создаваемых распознавателем фабрики компонентов - PullRequest
1 голос
/ 26 марта 2019

Я создаю утилиту для динамического отображения угловых компонентов в виде модальных окон. Я использую ComponentFactoryResolver для динамического создания этих компонентов на DOM. У меня проблемы с выяснением того, как передавать данные между распознавателем. В настоящее время я использую свойство .instance резолвера, которое кажется наиболее популярным из всех моих онлайн-поисков. Но я не могу понять, как получить доступ к значениям внутри компонента, который я генерирую. Любая помощь будет высоко ценится.

Я пытался использовать атрибут @Input с несколькими разными именованными переменными, но, похоже, это не работает.

Здесь я прикрепляю входное значение к компоненту

private attachConfig(config, componentRef){
    let inputs = config.inputs;
    let outputs = config.outputs;

    componentRef.instance.anyInput = input;

  }

Вот компонент, который я создаю с помощью распознавателя. И как я сейчас пытаюсь получить доступ к БД.


import { Component, OnInit, Input } from '@angular/core';
import {ModalService } from '../../Services/modal.service';
import { Relationship } from 'src/Models/relationship'

@Component({
  selector: 'app-relationship-edit',
  templateUrl: './relationship-edit.component.html',
  styleUrls: ['./relationship-edit.component.css']
})
export class RelationshipEditComponent implements OnInit {

  @Input() data : Relationship;

  constructor(private modalService: ModalService) { }

  ngOnInit() {
    console.log(this.data);
  }

  public close() {
    this.modalService.destroy();
  }

}

``````````````````````
I am not sure how to access the data that was passed in the instance variable.
...