diff --git a/src/Wikipedia.js b/src/Wikipedia.js index a05ccab..a1c3b80 100644 --- a/src/Wikipedia.js +++ b/src/Wikipedia.js @@ -73,7 +73,7 @@ class Wikipedia extends Component { } }) .then(resRecordingQuery => { - let musicbrainzWorkId = resRecordingQuery.data.relations.map(x => x['target-type'] === 'work' ? x.work.id : "").toString() || P435; + let musicbrainzWorkId = resRecordingQuery.data.relations.map(x => x['target-type'] === 'work' ? x.work.id.toString() : "") || P435.toString(); axios.get(`${musicbrainzBaseUrl}/work/${musicbrainzWorkId}`, { params:{ 'inc': 'artist-rels url-rels', @@ -108,7 +108,7 @@ class Wikipedia extends Component { } }) .then(resRecordingQuery => { - let musicbrainzWorkId = resRecordingQuery.data.relations.map(x => x['target-type'] === 'work' ? x.work.id : "").toString() || P435; + let musicbrainzWorkId = resRecordingQuery.data.relations.map(x => x['target-type'] === 'work' ? x.work.id.toString() : "") || P435.toString(); axios.get(`${musicbrainzBaseUrl}/work/${musicbrainzWorkId}`, { params:{ 'inc': 'artist-rels url-rels', @@ -148,11 +148,17 @@ class Wikipedia extends Component { wikidataQ: resQ.data.entities, isWDataLoaded: true }) - try{this.getMusicBrainzFromWData(resQ.data.entities[wikidatatmp.claims.P175[0].mainsnak.datavalue.value.id].labels.en.value, - wikidatatmp.claims.P435[0].mainsnak.datavalue.value); + try{ + this.getMusicBrainzFromWData( + resQ.data.entities[wikidatatmp.claims.P175[0].mainsnak.datavalue.value.id].labels.en.value, + wikidatatmp.claims.P435[0].mainsnak.datavalue.value + ); } - catch{ - console.error('no music') + catch(e){ + console.error(e) + this.getMusicBrainzFromWData( + resQ.data.entities[wikidatatmp.claims.P175[0].mainsnak.datavalue.value.id].labels.en.value + ); } })) if (wikidatatmp.sitelinks.enwiki) @@ -199,7 +205,12 @@ class Wikipedia extends Component { let title = this.props.title || this.props.title2; axios.get(wdk.searchEntities(`${title.trim()}`)) .then(wikidataSearchRes => { - this.getWikidataPage(wikidataSearchRes.data.search[0].title) + try{ + this.getWikidataPage(wikidataSearchRes.data.search[0].title) + } + catch(e){ + console.error(e) + } }) } return new Promise((resolve, reject) => {