我有一个节点/express服务器,我正在尝试从助手文件中获取一个函数到我的app.js供使用。这是助手文件中的功能:
CC.CURRENT.unpack = function(value)
{
var valuesArray = value.split("~");
var valuesArrayLenght = valuesArray.length;
var mask = valuesArray[valuesArrayLenght-1];
var maskInt = parseInt(mask,16);
var unpackedCurrent = {};
var currentField = 0;
for(var property in this.FIELDS)
{
if(this.FIELDS[property] === 0)
{
unpackedCurrent[property] = valuesArray[currentField];
currentField++;
}
else if(maskInt&this.FIELDS[property])
{
//i know this is a hack, for cccagg, future code please don't hate me:(, i did this to avoid
//subscribing to trades as well in order to show the last market
if(property === 'LASTMARKET'){
unpackedCurrent[property] = valuesArray[currentField];
}else{
unpackedCurrent[property] = parseFloat(valuesArray[currentField]);
}
currentField++;
}
}
return unpackedCurrent;
};
在那个辅助文件的底部,我做了一个模块。export(助手文件长400行,我不想导出其中的每个功能):
module.exports = {
unpackMessage: function(value) {
CCC.CURRENT.unpack(value);
}
}
然后在我的app.js中我打电话
var helperUtil = require('./helpers/ccc-streamer-utilities.js');
最后,我在app.js and Console.log中调用了该功能:
res = helperUtil.unpackMessage(message);
console.log(res);
问题在于console.log每次都会散发出一个不确定的,但是在此示例中:https://github.com/cryptoqween/cryptoqine.github.io/tree/tree/master/master/master/streamer/current(不是不是Node.js)它可以完美地工作。所以我认为我正在进口错误。我要做的就是在我的app.js
unPackMessage(val)
调用不返回任何内容:
module.exports = {
unpackMessage: function(value) {
CCC.CURRENT.unpack(value);
}
}
您需要返回CCC.CURRENT.UNPACK(value);
module.exports = {
unpackMessage: function(value) {
return CCC.CURRENT.unpack(value);
}
}