【问题标题】:Module not found in node-webkit在 node-webkit 中找不到模块
【发布时间】:2014-07-26 21:58:18
【问题描述】:

我最近开始玩 node-webkit 并尝试创建一个简单的 HelloWorld + 加载一个模块。 我选择测试的模块是“getmac”(https://www.npmjs.org/package/getmac)。

这是我的代码:

<!DOCTYPE html>
<html>
  <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <script>
    var gm = require('getmac');
    </script>
    <title>Hello World!</title>
  </head>
  <body>
    <h1>Hi!</h1>
    We are using node.js <script>document.write(process.version)</script>.
  </body>
</html>

我通常使用 npm install 安装模块,并且我的 app 文件夹中有一个 node_modules 文件夹。我所有的资源都在文件夹内(没有其他文件夹,除了 node_modules -> 这意味着没有树结构)。 当我运行此代码时,我收到“找不到模块”错误。我还阅读了有关使用 nw-gyp 重新构建模块的内容,但我什至不知道在这种情况下是否有必要(如果可能,请在答案中包含有关此内容的内容)。
无论如何,感谢所有帮助。
注意:helloworld 可以在不尝试加载模块的情况下工作。

【问题讨论】:

    标签: node.js node-webkit


    【解决方案1】:

    需要使用browserify生成正确的js文件加载到浏览器中。从 getmac 页面看起来它应该支持它。 Here's如何生成js文件。

    【讨论】:

    • 谢谢,这让我开始了,但我仍然无法让它工作。我用 npm 安装了 browserify,然后在 node_modules/ 中运行: browserify -r getmac > getmac.js 。这成功输出了一个 getmac.js 文件,我可以将其包含在我的 html 中。但是当我尝试调用 API 时,它会给出一个错误(未捕获节点错误)。我做错什么了吗?
    • 我也遇到了这个github.com/rhiokim/node-webkit-test/tree/master/get-mac-addres,这正是我想要构建的。作者似乎没有为此使用browserify。我也无法运行他的项目,遇到了和以前一样的错误。
    • 对于任何想知道这一点的人,你不需要为这个模块提供帮助。不过,感谢您的帮助。
    【解决方案2】:

    问题在于压缩所有内容时。模块没有错误。 压缩的时候忘记加-r了,所以没有包含子目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-06-16
      • 1970-01-01
      • 1970-01-01
      • 2017-04-16
      • 1970-01-01
      • 1970-01-01
      • 2012-11-20
      相关资源
      最近更新 更多