坚持一个节点的练习

时间:2015-08-13 07:49:46

标签: node.js

大家好我已经开始学习节点我正在学习 learnyounode 现在我被困在昨天的练习6模块中 经过我的代码尝试后,我无法解决这个问题,所以搜索后我得到了一个url示例所有的learnyounode练习

https://github.com/proustibat/Node.js-Learnyounode-exercises

即使我复制了第6个练习的代码,但是没有工作,其他所有代码都在工作。

main test.js

var mymodulelist = require('./mymodule.js');

var dirWanted = ".";
if (process.argv[2] !== undefined) {
	dirWanted = process.argv[2];
}

var extWanted = "*";
if (process.argv[3] !== undefined) {
	extWanted = process.argv[3];
}

mymodulelist(dirWanted, extWanted, function(err, list) {
	if (err) {
		return console.log(err);
	}
	list.forEach(function(file) {
		console.log(file);
	})
});

模块mymodule.js

var fs = require('fs')

module.exports = function(dirname, filter, callback) {
	var regex = new RegExp('\\.' + filter + '$')    

	var filelist = new Array();
	var i = 0

	fs.readdir(dirname, function (err, list) {

		if (err) {
			return callback(err);
		}
		else {
			list.forEach(function (file) {
				if (regex.test(file))
					filelist[i] = file;
					i += 1;
			})
		}
		return callback(null, filelist);
	});

};

learnyounode验证test.js 后,我收到此错误

  • √提交结果符合预期
  • √附加模块文件导出单个功能
  • √附加模块文件导出一个带3个参数的函数
  • √附加模块文件正确处理错误
  • √附加模块文件处理回调参数
  • √附加模块文件在回调上返回了两个参数 功能
  • √附加模块文件返回正确的元素数量 回调的第二个参数
  • √附加模块文件正确处理'。' - 前缀扩展名? 您的附加模块文件[mymodule.js]未返回数组 使用正确的numbe
  • 元素作为回调的第二个参数
  • FAIL

  • 您的MAKE IT MODULAR解决方案没有通过。再试一次!

即使我已经google了,某处也建议升级learyounode更新,即使我也这样做,但我仍然停在这一点

对此有任何建议或解决方案.. ???

先谢谢你们...... !!!

1 个答案:

答案 0 :(得分:0)

您确定要验证正确的文件吗? 使用上面的代码,它传递给我: enter image description here