【发布时间】:2020-03-09 04:10:18
【问题描述】:
当状态列值为“Y”时,我需要从excel文件中获取一个值,我想将名称列中的值返回给调用函数,excel表中包含的数据如下
姓名号码状态 YYYY 1234 否 XXXXXX 3456 是的
函数我写成这样
var Excel = require(‘exceljs’);
var workbook = new Excel.Workbook();
var selectStatus = ’’;
module.exports = function() {
return actor({
trimSelectName: function() {
workbook.xlsx.readFile("E:/testData.xlsx")
.then(function(sheetName) {
// use workbook
i = 1;
try {
var workSheet = workbook.getWorksheet("trim");
workSheet.eachRow({
includeEmpty: false
}, function(row, rowNumber) {
if (i == 1) {
i = 0;
} else {
currRow = workSheet.getRow(rowNumber);
console.log("Name :" + currRow.getCell(1).value + ", Number :" + currRow.getCell(2).value +
"Select Status :" + currRow.getCell(3).value);
selectStatus = currRow.getCell(3).value;
if (selectStatus == "Y") {
return selectStatus;
}
}
});
} catch (Error) {
console.log(Error);
}
});
},
});
};
但我正在尝试从调用函数中打印值,我总是将其设为未定义
调用函数:
const selected = trimDataSelection.trimSelectName();
能否请您告诉我问题可能出在哪里?
【问题讨论】:
-
CodeceptJS 是一个用于单元测试网站的框架。你能解释一下它与这个有什么关系吗?
-
@JLRishe 是一个验收测试框架,而不是一个单元测试框架。问题相关,因为作者希望将其实现为 CodeceptJS 步骤,在代码中找出“演员”。见codecept.io/pageobjects#actor。
标签: javascript node.js codeceptjs