* Ngfor в классе div не работает - Angular 6 и Bootstrap - PullRequest
0 голосов
/ 23 мая 2018

Я внедряю службу REST в Angular.Все отлично работаетПленка представляет собой объект JSON, как вы можете видеть ниже на картинке.Я не могу распечатать результаты в полях (ngif), но я могу в ngfor.Все работает хорошо, как я сказал, кроме этого:

<button (click)="getFilm(title.value); title.value=''">Buscar Pelicula</button>

<div class="col-md-6">
    <div class="list-group">
        <p class="list-group-item" *ngIf='film'>Titulo: {{film.title}}</p>
        <p class="list-group-item" *ngIf='film'>Year: {{film.year}}</p>
        <p class="list-group-item" *ngIf='film'>Director:  {{film.director}}</p>
        <p class="list-group-item" *ngIf='film'>Reparto: {{film.reparto}}</p>
        <p class="list-group-item" *ngIf='film'>Urlvideo: {{film.urlvideo}}</p>
        <p class="list-group-item" *ngIf='film'>Urlvideo: {{film.urlimagen}}</p>

        <p *ngFor="let film of film">{{film.title}}, {{film.year}}, {{film.director}},
        {{film.reparto}},{{film.urlvideo}},<br>Imagen: <img src="{{film.urlimagen}}"></p>
    </div>
</div>

Я не буду загружать весь код, поскольку он будет слишком многословным.Я хочу, чтобы это было ngFor в div class (поэтому, если у меня есть два фильма, будет два "стола".

Я действительно не знаю, почему; *ngIf тоже не работает.

Enter image description here

Я пытался вставить ngfor в div class (второй), но он никак не работает ...

Содержимое JSON в случае «Интерстеллар», которое я получаю в своей службе REST, является следующим: [{"id":8,"title":"Interstellar","year":"2014","director":"Christopher Nolan","reparto":"Jessica Chastain, Matthew, Matt","urlvideo":"https://www.youtube-nocookie.com/embed/UoSSbmD9vqc","urlimagen":"http://www.fotogramas.es/var/ezflow_site/storage/images/peliculas/interstellar/7193613-12-esl-ES/Interstellar.jpg"}]

И вот как я его получаю (вы не можете его получитькак я реализую это в другом проекте).

@Injectable()
export class servicioRest {

    constructor(private http: Http) { }

    getFilm(title: string){
        let url = "http://localhost:8080/buscar/"+title;
        return this.http.get(url).pipe(map(response => response.json()));
    }

1 Ответ

0 голосов
/ 23 мая 2018

Ваш журнал (<p *ngFor="let film of film">...</p>) предполагает, что film - это массив объектов.Таким образом, должно работать следующее:

<div class="list-group" *ngFor="let filmItem of film">
    <p class="list-group-item" *ngIf="filmItem.title">Titulo: {{filmItem.title}}</p>
    <p class="list-group-item" *ngIf="filmItem.year">Year: {{filmItem.year}}</p>
    <p class="list-group-item" *ngIf="filmItem.director">Director:  {{filmItem.director}}</p>
    <p class="list-group-item" *ngIf="filmItem.reparto">Reparto: {{filmItem.reparto}}</p>
    <p class="list-group-item" *ngIf="filmItem.urlvideo">Urlvideo: {{filmItem.urlvideo}}</p>
    <p class="list-group-item" *ngIf="filmItem.urlimagen">Urlvideo: {{filmItem.urlimagen}}</p>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...