我有这个opcode.js文件,需要用mocha对其进行测试。示例可以在这里查看:
var opcode = {
'0': {
decode: function (data) {
var ocBuf = new OpcodeBuffer(data);
var kpo = {};
kpo.opcode = 0x00;
ocBuf.setIndex(1);
kpo.sid = ocBuf.readUInt16();
return kpo;
},
encode: function (kpo) {
var ocBuf = new OpcodeBuffer(opcode['0'].encodeLength(kpo));
ocBuf.writeUInt8(0x00);
ocBuf.writeUInt16(kpo.sid);
return ocBuf.buf;
}
module.exports = opcode;
并写在我的test_ack.js文件中:
var op = require('./ack.js');
var assert = require('assert');
opcode = op.opcode;
var decode = require('opcode').decode();
var encode = require('opcode').encode();
问题是我一直在编码和解码未定义的错误消息。仍然无法获取如何将其导入目录中。
最佳答案
给定您显示给我们的代码,这就是导入两个函数的方式:
var decode = require('opcode')["0"].decode;
var encode = require('opcode')["0"].encode;
我建议另外避免两次调用
require
。除其他外,您当前拥有的代码将调用函数,而不仅仅是导入它们。