From 2181b489381827a3fe6a9265b09bca068da3461c Mon Sep 17 00:00:00 2001 From: Alanscut Date: Fri, 29 May 2020 15:45:11 +0800 Subject: [PATCH 1/2] fix issue#1299 --- lib/xlsx/xform/strings/shared-string-xform.js | 11 +++++++---- .../xlsx/xform/strings/shared-string-xform.spec.js | 14 +++++++++++++- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/lib/xlsx/xform/strings/shared-string-xform.js b/lib/xlsx/xform/strings/shared-string-xform.js index fd02ba987..3f789e963 100644 --- a/lib/xlsx/xform/strings/shared-string-xform.js +++ b/lib/xlsx/xform/strings/shared-string-xform.js @@ -31,10 +31,13 @@ class SharedStringXform extends BaseXform { render(xmlStream, model) { xmlStream.openNode(this.tag); if (model && model.hasOwnProperty('richText') && model.richText) { - const {r} = this.map; - model.richText.forEach(text => { - r.render(xmlStream, text); - }); + if (model.richText.length) { + model.richText.forEach(text => { + this.map.render(xmlStream, text); + }); + } else { + this.map.t.render(xmlStream, ''); + } } else if (model !== undefined && model !== null) { this.map.t.render(xmlStream, model); } diff --git a/spec/unit/xlsx/xform/strings/shared-string-xform.spec.js b/spec/unit/xlsx/xform/strings/shared-string-xform.spec.js index 2ff5ba541..006a618e9 100644 --- a/spec/unit/xlsx/xform/strings/shared-string-xform.spec.js +++ b/spec/unit/xlsx/xform/strings/shared-string-xform.spec.js @@ -1,4 +1,4 @@ -const testXformHelper = require('./../test-xform-helper'); +const testXformHelper = require('../test-xform-helper'); const SharedStringXform = verquire('xlsx/xform/strings/shared-string-xform'); @@ -52,6 +52,18 @@ const expectations = [ }, tests: ['render', 'renderIn', 'parse'], }, + { + title: 'richText is empty', + create() { + return new SharedStringXform(); + }, + preparedModel: { + richText: [], + }, + xml: '', + parsedModel: '', + tests: ['parse'], + }, { title: 'text + phonetic', create() { From 33e84bb29d6d26212a83559e71de25b1a516721b Mon Sep 17 00:00:00 2001 From: Alanscut Date: Fri, 29 May 2020 16:13:20 +0800 Subject: [PATCH 2/2] fix ci error --- lib/xlsx/xform/strings/shared-string-xform.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/xlsx/xform/strings/shared-string-xform.js b/lib/xlsx/xform/strings/shared-string-xform.js index 3f789e963..e23cfde7f 100644 --- a/lib/xlsx/xform/strings/shared-string-xform.js +++ b/lib/xlsx/xform/strings/shared-string-xform.js @@ -33,7 +33,7 @@ class SharedStringXform extends BaseXform { if (model && model.hasOwnProperty('richText') && model.richText) { if (model.richText.length) { model.richText.forEach(text => { - this.map.render(xmlStream, text); + this.map.r.render(xmlStream, text); }); } else { this.map.t.render(xmlStream, ''); pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy