From 5939f093e6126788409154feddc3c057e1f80e41 Mon Sep 17 00:00:00 2001 From: Bing Sun Date: Mon, 11 May 2020 21:23:06 +0800 Subject: [PATCH] make_model: support changing data when exporting --- src/util/make_model.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/util/make_model.js b/src/util/make_model.js index 67ce28b..0cce306 100644 --- a/src/util/make_model.js +++ b/src/util/make_model.js @@ -213,9 +213,19 @@ export default (options={}) => { export(options={}) { let _data = this.data() + if (typeof options.filter == 'function') { + _data = options.filter(_data) + } + if (options.type == 'csv') { let headers = _configs.selects && _configs.selects.map(select => select.alias || select.label) || Object.keys(_data[0]) + if (options.generated_columns) { + options.generated_columns.forEach(column => { + headers.splice(column.position, 0, column.label) + }) + } + let body = _data.map(row => headers.map(key => row[key]).join(',')).join('\n') _data = '\ufeff' + headers.join(',') + '\n' + body