Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
// 头部数据
titleKeys.forEach(function(t) {
rowObj[t] = obj[t];
});
formatData.push(rowObj);
});
// 取表格title
opts.title.forEach(function(obj) {
title[obj.fieldName] = obj.displayName;
});
formatData.unshift(title);
} else {
debug.log('title必须为array');
return 'title必须为array';
}
if (!opts.filename) {
debug.log('filename不能为空');
return 'filename不能为空';
}
if (!opts.sheetname) {
debug.log('sheetname不能为空');
return 'sheetname不能为空';
}
if (formatData.length === 1) {
// 取表格title
opts.title.forEach(function(obj) {
title[obj.fieldName] = obj.displayName;
});
formatData.unshift(title);
} else {
debug.log('title必须为array');
return 'title必须为array';
}
if (!opts.filename) {
debug.log('filename不能为空');
return 'filename不能为空';
}
if (!opts.sheetname) {
debug.log('sheetname不能为空');
return 'sheetname不能为空';
}
if (formatData.length === 1) {
debug.log('没有' + opts.sheetname + '数据');
return '没有' + opts.sheetname + '数据';
}
/** The system module
* @type {object} */
const system = runtime.level >= fs.ROOT_LEVEL ? require('system') : null;
/** The web page's document
* @type {Document} */
const document = system ? system.window.document : null;
/** The translation function
* @type {function} */
const tr = translate.translate;
// If the application was loaded as a launcher...
if(runtime.arguments.launcher) {
debug.log('Running dolphin launcher...');
// Run the launcher's file in the global's context
system.loadScript(runtime.path + '/launcher.js', () => {
debug.error(tr('Failed to load the launcher file'));
});
} else {
/** The translation package path
* @type {string} */
// NOTE: We load the translation only here because the launcher will have
// to load it by itself (translations are not synchronous between
// main and child processes)
let tr_path = fs.makeAbsolute('translations/' + translate.language + '.ntp');
// If the translation was not loaded and a package exists for this language...
if(!translate.loaded(tr_path) && fs.fileExists(tr_path) === true) {
// Load the translation package
const log = message => debug.log(message)
log.success = message => debug.log(`✔ ${message}`)
log.success = message => debug.log(`✔ ${message}`)
removeChild: function(child)
{
var idx = -1;
this._children.some(function(node, index, arr)
{
if (idx == -1 && node == child)
{
idx = index;
return true;
}
else
return false;
});
if (idx == -1 || idx == this._children.length)
{
debug.log("this cannot remove the child, the child'a parent is not parent");
return;
}
this.onExit();
child._parent = null;
this._children.splice(idx, 1);
child.exec("setMatrixDep", null);
},
return 'title必须为array';
}
if (!opts.filename) {
debug.log('filename不能为空');
return 'filename不能为空';
}
if (!opts.sheetname) {
debug.log('sheetname不能为空');
return 'sheetname不能为空';
}
if (formatData.length === 1) {
debug.log('没有' + opts.sheetname + '数据');
return '没有' + opts.sheetname + '数据';
}
workbook.Sheets[opts.sheetname] = fromJSONArray(formatData, opts.title);
XLSX.writeFile(workbook, opts.filename + '.xlsx');
return opts.filename + '.xlsx';
}
.on('restart', function () {
debug.log('restarted!');
});
});
formatData.unshift(title);
} else {
debug.log('title必须为array');
return 'title必须为array';
}
if (!opts.filename) {
debug.log('filename不能为空');
return 'filename不能为空';
}
if (!opts.sheetname) {
debug.log('sheetname不能为空');
return 'sheetname不能为空';
}
if (formatData.length === 1) {
debug.log('没有' + opts.sheetname + '数据');
return '没有' + opts.sheetname + '数据';
}
workbook.Sheets[opts.sheetname] = fromJSONArray(formatData, opts.title);
XLSX.writeFile(workbook, opts.filename + '.xlsx');
return opts.filename + '.xlsx';