как проверить нг-если после события изменения - PullRequest
0 голосов
/ 16 сентября 2018

Я использую в своем проекте Angular 6.

У меня есть элемент div, имеющий * ng-if = "edited", как показано ниже

<div *ngIf="edited">
    {{langText}}
</div>

при первой отредактированной загрузке будет ложными это не будет видноНо у меня есть случайное событие, как показано ниже:

<select (change)="getSelectedLang(i,$event.target.value)">
                <option value="0">Language</option>{{languages[0].Lang}}
                <option *ngFor="let selecLanguage of languages[0].Lang" value={{selecLanguage}}>
                    {{selecLanguage}}
                </option>
            </select>

. Как только я выберу любой язык из выпадающего списка, он вызовет функцию, к которой привязан API веб-службы, и получит следующий результат в JSON.и я делаю edited = true.

getSelectedLang(id,langName){
        this.edited = true;
        this.custService.getSelectedLanguageData(id,langName).subscribe((data:  Array<object>) => {
        this.langtext = data;
        this.langtext = JSON.stringify(this.langtext.comicPageTextLites);
        console.log(this.langtext);
        this.langtext = JSON.parse(this.langtext);
        console.log( "=====this.langtext=====" );
        console.log( this.langtext );
            $(".show_me").toggle();
            $(".show_me").show();
        });
    }

[{"pageNo":1,"text":"हैलो नासीर, आप कैसे हैं","x":"679","y":"689"},{"pageNo":2,"text":"मैं अच्छा हूँ","x":"568","y":"890"}]

Теперь мне нужно показать div * ngIf = "edited" в пользовательском интерфейсе.Но это не отображается.

Пожалуйста, подскажите, как мне этого добиться.Каждый раз, когда я меняю язык из выпадающего списка, результат будет меняться, и я должен показывать данные в пользовательском интерфейсе.

1 Ответ

0 голосов
/ 16 сентября 2018

Для меня проблема не в «отредактированной» переменной, * ngIf должен работать.

Имя переменной langtext, если плохо записать в HTML.Вы используете langtext в компоненте и пишете «langText» в html.

...