node-bindings非常好用,但是在electron中无法使用,我查了一下,是因为filename以file://开头导致无法定位动态库的根目录。已经提交给作者了,可以临时修改一下node_modules/bindings/bindings.js。
exports.getfilename = function getfilename (calling_file) { var origpst = error.preparestacktrace , origstl = error.stacktracelimit , dummy = {} , filename error.stacktracelimit = 10 error.preparestacktrace = function (e, st) { for (var i=0, l=st.length; i<l; i++) { filename = st[i].getfilename() if (filename !== __filename) { if (calling_file) { if (filename !== calling_file) { return } } else { return } } } } // run the 'preparestacktrace' function above error.capturestacktrace(dummy) dummy.stack // cleanup error.preparestacktrace = origpst error.stacktracelimit = origstl //in electron, filename starts with "file://" var fileschema = "file://"; if(filename.indexof(fileschema) === 0) { filename = filename.substr(fileschema.length); //on windows if(filename.indexof(":/") == 2){ filename = filename.substr(1); } } return filename }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对移动技术网的支持。如果你想了解更多相关内容请查看下面相关链接
如对本文有疑问, 点击进行留言回复!!
2016年信息安全工程师综合知识第11-15题解析【建群网培信息安全工程师】
网友评论