使用 nodeunit 测试 JavaScript 库 - FileApi, substr undefined
Testing JavaScript libraries with nodeunit - FileApi, substr undefined
我想用nodeunit测试我的库,我在其中使用File
对象,在网站上一切正常(FileAPI在那里实现),但是当我尝试使用nodeunit测试它时,我收到一个错误:
Fatal error: File is not defined
假设我必须添加:
var FileAPI = require('file-api');
var File = FileAPI.File;
在乞求代码时,但是当我将该库包含在网站上时,我不需要它,如何处理?要使用nodeunit,我必须在最后添加module.exports,是否也有必要?(GitHub上的代码示例)
更重要的是,当我尝试测试此代码时:https://github.com/GeoSmartCity-CIP/gsc-client/blob/feature/upload-data-file/src/upload/upload.js
通过此测试:
var gsc = require('../../src/upload/upload');
var FileAPI = require('file-api');
var File = FileAPI.File;
var exports = exports || {};
exports.isFileTypeCorrect = function(test) {
var file = new File('test.geojson');
var asd = new gsc.upload.Data(file);
test.ok(asd.isFileTypeCorrect(), 'this assertion should pass');
test.done();
};
我收到Fatal error: Cannot read property 'substr' of undefined
错误,有什么问题?编辑:substr 的问题很可能来自 isShapefileCorrect 函数,但仍然不知道为什么?
var asd = new gsc.upload.Data(file);
不是异步函数吗?那么可能 asd.isFileTypeCorrect() 应该在上传回调中调用。此外,您将isFileTypeCorrect函数定义为模块导出并在自身内部调用自身。这不是一个无限循环吗?
相关文章:
- jQuery:使用substr()的另一种方法
- 使用.substr将第一个字母更新为大写
- jQuery中的类和substr
- JavaScript window.location.search.substr(1)以空字符串形式返回
- 未捕获的类型错误:对象#<对象>没有方法'substr'带标签的标记
- 使用变量和获取输入值时,substr()的结果不同
- 使用 nodeunit 测试 JavaScript 库 - FileApi, substr undefined
- Javascript substr in Internet Explorer 8
- JavaScript substr 与从第一个字符开始时的子字符串
- 不中断内联样式的 substr
- Substr python version
- 将此 PHP 代码转换为 strpos、str_replace、substr
- 从HTML5 FileApi加载的图像中检索EXIF图像元数据
- 基于字节而不是字符计数的 Substr
- jQuery substr() multi select values
- 未捕获的类型错误:无法读取未定义的属性“substr” - 旧 Jquery
- 如何下载apk并保存在移动内存中,而不是使用带有webIntent和fileApi的Phonegap SD卡
- 在应用substr()之前检查.length
- (STDERR)TypeError:Object[Object Object]没有方法'substr'
- 关于Javascript中的replace()或substr()的性能