Я использую текстовый редактор froala для хранения некоторых пользовательских данных. Я хочу создать определенный вывод в тексте html, который создает ссылки, способные взаимодействовать с маршрутизатором или с приложением в целом (функция вызова в контроллерах и т. д.).
Каков наилучший способ «переосмыслить» html-ссылки как маршрутизируемые ссылки, чтобы страница не перезагружалась?
вывод фроала:
<a href="/someRoute">some text</a>
станет после лечения:
<a [routerLink]="['/someRoute']">some text</a>
Редактировать: Мне не нужна фроала. Я могу создать свой собственный редактор. Но мне нужно преобразовать пользовательский ввод html в ссылку маршрутизатора или функции компонента
Редактировать 2: возможно ли переинтерпретировать html как
<app-mycomponent [someVariable]="someVariable"></app-mycomponent>
Вот скелет того, что мне нужно: https://stackblitz.com/edit/angular-tnnw8n?embed=1&file=src/app/hello.component.ts
Я могу разобрать html, чтобы найти мои конкретные теги и использовать *ngIf в представлении.
<ng-container *ngFor="let parsedHtml of arrayOfHtmlPart">
<ng-container *ngIf="isHtml(parsedHtml)">
{{parsedHtml}}
</ng-container>
<ng-container *ngIf="!isHtml(parsedHtml)">
<app-mycomponent></app-mycomponent>
</ng-container>
</ng-container>
но это не элегантно
routerLink
. Попробуйте предоставить минимальный воспроизводимый пример, воспроизводящий ваш вариант использования на stackblitz.io, и я мог бы предложить вам обходной путь. - person   schedule 30.08.2018