我正在使用node-webkit和一个名为edge的外部模块。
根据node-webkit文档,与node-gyp相反,包含本机代码的模块必须使用nw-gyp重新编译。我可以没有错误地重新编译,并且node-webkit似乎导入模块正常。
这是我的代码。我尝试使用的代码如下:
var edge = require('edge.node');
var hello = edge.func(function () {/*
async (input) =>
{
return ".NET welcomes " + input.ToString();
}
*/});
hello('Node.js', function (error, result) {
if (error) throw error;
console.log(result);
});在node-webkit中运行时抛出以下错误。
Uncaught TypeError: Object [object Object] has no method 'func' 如果将对象写出到console.log,我可以看到:
Object {initializeClrFunc: function}
initializeClrFunc: function () { [native code] }
__proto__: Object所以模块似乎已经加载了。如果我在node-webkit之外运行相同的代码,一切都会正常工作,并且我可以访问func函数。这快把我逼疯了--任何帮助都将不胜感激。
发布于 2014-07-02 15:37:23
func方法是由edge.js提供的,它是edge.node本地模块的包装器。所以你应该用require('edge')替换require('edge.node')。
https://stackoverflow.com/questions/16920758
复制相似问题