Я использую angular 9 и inputEmoji. js, чтобы добавить значок для текстового поля. Мне нужно вызывать функцию в файле js после каждого вызова API, чтобы перезагрузить текстовое поле. но не работает.
Как перезагрузить текстовое поле после привязки модели к ngswitch?
этот код:
Вход файла ссылкиEmo js. js https://www.jqueryscript.net/download/emoji-picker-input-textarea.zip
main. js функция:
function LoadTextEditIcon(){
console.log('fdsfds');
$('textarea').emoji({place: 'after'});
}
html шаблон:
<div *ngIf="ItemEdit && (ItemEdit | json) != ({} | json)">
<div *ngFor="let itemContent of (ItemEdit ? ItemEdit.content : []); let i = index">
<div *ngIf="itemContent.optionText?.length > 0">
<div [(ngSwitch)]="itemContent.contentType.code">
<div *ngSwitchCase="'TEXT'">
<div>
<textarea class="form-control"
[(ngModel)]="itemContent.optionText[0].name"></textarea>
</div>
</div>
<div *ngSwitchDefault></div>
</div>
</div>
</div>
</div>
component.ts API вызова компонента:
declare function LoadTextEditIcon(): any; // function in file js
...
ngOnInit(): void {
this.getContent();
}
getContent() {
if (this.ItemEdit) {
let c = new StepModel();
var s = this.contentService.getContent(c).subscribe(data => {
if (data && data.isSuccess) {
this.ItemEdit = data;
LoadTextEditIcon();
}
s.unsubscribe();
},
error => {},
() => { alert('finished!');this.reloadControl(); }
);
}
}