将模型绑定到ngswitch角度9

时间:2020-06-17 08:32:37

标签: angular angular2-template

我使用angular 9并使用inputEmoji.js为textarea添加图标。我需要在每次api调用后在js文件中调用一个函数来重新加载textarea。但不起作用。

将模型绑定到ngswitch后如何重新加载textarea?

此代码:

链接文件inputEmojs.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(); }
              );
            }
          }

0 个答案:

没有答案