Невозможно редактировать динамический компонент в Angular - PullRequest
0 голосов
/ 23 февраля 2019

Я создаю динамический компонент обычным способом следующим образом.

const formRowFactory = this.resolver.resolveComponentFactory(FormRowComponent);
const { instance: formRowComponent } = this.newComponents.createComponent(formRowFactory);
formRowComponent.name = categoryName;

Я храню его индекс в другом месте, чтобы я мог получить компонент

const component = this.newComponents.get(index);

Затем я хочу отредактироватьимя и я не могу это сделать.Он не позволяет мне получить доступ к экземпляру или нет функции для его изменения.

enter image description here

Итак, как вы это делаете?Кстати, так легко редактировать контент детей в Angular.Почему такие жесткие с динамическими?

1 Ответ

0 голосов
/ 27 июня 2019

Я полагаю, это потому, что когда вы пишете this.newComponents.get(index), вы получаете обратно ViewRef , а не ComponentRef .Я поддерживаю отдельный массив с моими динамически созданными ссылками на компоненты, чтобы обращаться к ним позже.

Angular docs

...