Как решить проблему ошибки типа, когда данные являются нулевыми в ngif?
Если данные сохраняются во всех разделах Api, так что не получите никакой ошибки типа, если какой-либо раздел равен нулю, так дайте мне ошибку типа.
Я поделюсь с вами кодом
это файл компонента html.
<div *ngIf="SingleCountryData" class="card"> <div class="card-body"> Latitude & Longitude:-<p class="card-text">{{SingleCountryData[0].latlng}}</p> Calling Codes:-<p class="card-text">{{SingleCountryData[0].callingCodes}}</p> Alt Spellings:-<p class="card-text">{{SingleCountryData[0].altSpellings}}</p> Demonym:-<p class="card-text">{{SingleCountryData[0].demonym}}</p> Gini:-<p class="card-text">{{SingleCountryData[0].gini}}</p> Border:-<p class="card-text">{{SingleCountryData[0].borders}}</p> </div> </div> </div> <div class="col-md-6"> <div class="card"> <div class="card-body"> Currency:- <p *ngIf="SingleCountryData" class="card-text"> Code:-<span><a [routerLink]="['/region/countries',SingleCountryData[0].region, SingleCountryData[0].name, SingleCountryData[0].currencies[0].code]">{{SingleCountryData[0].currencies[0].code}}</a></span><br> Name:-<span>{{SingleCountryData[0].currencies[0].name}}</span><br> Symbol:-<span>{{SingleCountryData[0].currencies[0].symbol}}</span><br> </p> Languages:- <p *ngIf="SingleCountryData" class="card-text"> iso639_1:-<span> {{SingleCountryData[0].languages[0].iso639_1}}</span><br> iso639_2:-<span> {{SingleCountryData[0].languages[0].iso639_2}}</span><br> Name:-<span> {{SingleCountryData[0].languages[0].name}}</span><br> NativeName:-<span> {{SingleCountryData[0].languages[0].nativeName}}</span><br> <br> iso639_1:-<span>{{SingleCountryData[0].languages[1].iso639_1}}</span><br> iso639_2:-<span>{{SingleCountryData[0].languages[1].iso639_2}}</span><br> Name:-<span>{{SingleCountryData[0].languages[1].name}}</span><br> NativeName:-<span>{{SingleCountryData[0].languages[1].nativeName}}</span> </p> Translations:- <p *ngIf="SingleCountryData" class="card-text"> <span>de:-{{SingleCountryData[0].translations.de}}</span><br> <span>es:- {{SingleCountryData[0].translations.es}}</span><br> <span>fr:- {{SingleCountryData[0].translations.fr}}</span><br> <span>ja:- {{SingleCountryData[0].translations.ja}}</span><br> <span>it:- {{SingleCountryData[0].translations.it}}</span><br> <span>br:- {{SingleCountryData[0].translations.br}}</span><br> <span>pt:- {{SingleCountryData[0].translations.pt}}</span><br> <span>nl:- {{SingleCountryData[0].translations.nl}}</span><br> <span>hr:- {{SingleCountryData[0].translations.hr}}</span><br> <span>fa:- {{SingleCountryData[0].translations.fa}}</span><br> </p> RegionBlocs:- <p *ngIf="SingleCountryData" class="card-text"> <span>Acronym:-{{SingleCountryData[0].regionalBlocs[0].acronym}}</span><br> <span>Name:-{{SingleCountryData[0].regionalBlocs[0].name}}</span><br> <span>Other Acronyms:-{{SingleCountryData[0].regionalBlocs[0].otherAcronyms}}</span><br> <span>Other Names:-{{SingleCountryData[0].regionalBlocs[0].otherNames}}</span> </p> Cioc:- <p *ngIf="SingleCountryData" class="card-text">{{SingleCountryData[0].cioc}}</p> </div> </div> </div> </div> </div>
это файл ts..
import { HttpClient } from '@angular/common/http'; import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; import { CountryHttpService } from '../country-http.service'; @Component({ selector: 'app-single-country-view', templateUrl: './single-country-view.component.html', styleUrls: ['./single-country-view.component.css'] }) export class SingleCountryViewComponent implements OnInit { SingleCountryData: any; constructor(private httpservice: CountryHttpService, private _route: ActivatedRoute, private router: Router, private http: HttpClient) { } ngOnInit() { let cName = this._route.snapshot.paramMap.get('name'); console.log(cName); this.httpservice.getSingleCountry(cName).subscribe( (result)=>{ this.SingleCountryData = result; console.log("Get Single Country Data",this.SingleCountryData); }, error => { console.log("some error occured"); console.log(error.errorMessage) }) } }
Я поделился snapsot выходного экрана
Скриншот (194).png - Google Диск[^]
Что я уже пробовал:
Я пытался показать все данные не приходят какие-либо ошибки, если данных нет в API, которые показывают нуль на есть пустое пространство..
Richard MacCutchan
Затем вам нужно проверить, какие данные вы получаете. Является ли он действительным или нулевым?
Tarun Surana
как проверить, являются ли данные действительными или нулевыми
Richard MacCutchan
Какие данные? Вам действительно нужно объяснить, где в вашем коде возникает эта проблема, и какой элемент является нулевым, и при каких условиях. Мы не можем запустить ваш код, чтобы выяснить это.
Tarun Surana
Я должен решить этот запрос, так что не волнуйтесь, что решение проблемы получите от stackoverflow.
Tarun Surana
У меня есть еще один вопрос, и я уже разместил его на вашем сайте.