From 64205f3333daf448a10e3464952e4b58472aafde Mon Sep 17 00:00:00 2001 From: Simon Willison Date: Wed, 27 Jun 2018 08:17:42 -0700 Subject: [PATCH] Respect _labels=on even if first row has a null, closes #5 --- src/DatasetteVega.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/DatasetteVega.js b/src/DatasetteVega.js index 1708921..9d0d96c 100644 --- a/src/DatasetteVega.js +++ b/src/DatasetteVega.js @@ -72,9 +72,14 @@ class DatasetteVega extends Component { fetch(url).then(r => r.json()).then(data => { if (data.length > 1) { // Set columns to first item's keys - const columns = Object.keys(data[0]).map( - key => (data[0][key] && data[0][key].label) ? `${key}.label` : key - ); + const columns = Object.keys(data[0]).map(key => { + // Do ANY of these rows have a .label property? + if (data.filter(d => (d[key] || '').label !== undefined).length) { + return `${key}.label`; + } else { + return key; + } + }); this.setState({ columns: columns, x_column: columns[0],