0

当带有数字的字段为空值时,我收到错误消息。

发送到单元格 ["F3"] 的 Number 函数的值不是数字,它具有对象类型和 null 值

这可以以某种方式解决吗?

我如何用数值填充表格的示例:

var styleNumber = wb.createStyle({
    font: {
        color: '#000000',
        size: 14,
        name: 'Times New Roman',
    },
    alignment: {
        horizontal: 'center',
        vertical: 'top'
    }
});

reports.forEach((report, index) => ws.cell(index + 3, 6).number(report._previousDataValues.code).style(styleNumber));
4

1 回答 1

0

javascript 与||您可以使用的运算符有一个巧妙的技巧

它所做的是返回第一个值,如果它是真实值,第二个,如果它不是

这将导致

reports.forEach((report, index) => ws.cell(index + 3, 6).number(report._previousDataValues.code || 0).style(styleNumber));

只是写出这段代码会发生什么:

previousDataValues.code = 1234
(_previousDataValues.code || 0) //returns 1234
previousDataValues.code = null
(_previousDataValues.code || 0) //returns 0
previousDataValues.code = 0
(_previousDataValues.code || 0) //returns 0
previousDataValues.code = -1234
(_previousDataValues.code || 0) //returns -1234

看到这个答案:https ://stackoverflow.com/a/476445/8796313

于 2019-11-13T08:21:00.203 回答