Node.js不能要求在同一目录中有一个.js文件
Node.js cannot require a .js file in the same directory
我有一个带有main.js
的节点webkit项目。在最上面,我有
var updater = require("./updater.js");
并且我在与CCD_ 3相同的目录中有一个名为CCD_。当我运行应用程序时,我得到错误
Uncaught Error: Cannot find module './updater.js'
updater.js
有一行:
module.exports = "Hello!";
我不知道为什么它不需要文件。我看到另一个项目也在做同样的事情。我可以将require
常规npm
模块与相同的main.js
进行比较。
这是因为,当您使用node-webkit运行应用程序(main.js)时,根(工作)目录是index.html所在的目录,所以'./'指的是该目录,而不是您请求模块的文件所在的目录。
您可以通过在"路径"节点模块中使用resolve方法来轻松解决此问题,并在工作文件中将其输出提供给所需方法
只需执行以下操作:
var path = require('path');
var updater = require( path.resolve( __dirname, "./updater.js" ) );
编辑:全局节点对象'__dirname'(和其他)的信息可以在这里找到。
相关文章:
- 是否有一个JS/jQuery函数可以获取某个类的每个元素的ID
- D3.js:将一个有响应的饼图放在其父分区的中心
- 这里有一个更优雅的/DRY/可维护的JS解决方案
- JS函数将一个空字符串传回php,但有一个值
- 在Express.js中,是否有一个相当于res.locals的路由
- Backbone.js视图可以有一个模型和一个集合吗
- Wordpress-我应该将脚本分为特定的页面还是有一个主js文件
- 在js中有一个cookie保存序列化的svgs
- 是否有一个JS库可以让我在网格中制作可拖动和可调整大小的磁贴,就像在iPhoto Journal中一样
- 为什么某些函数调用在 v8 源的 JS 文件中前面有一个 %
- 最好有一个包含少量JS的大网页,或者有一个包含一些JS生成内容的小网页
- 我怎样才能使用拉斐尔 JS 有一个连续的动画
- JS调用堆栈是否始终至少有一个帧
- 是否有一个可下载的 eclipse 包,我可以将其用于 Java、c++ 和 JS
- 缩小JS和CSS,每个JSP页面都有一个最小文件
- 是否有一个 Node.js 相当于 PHP 的包含,以便包含的代码可以访问父文件的变量
- 三.js为什么渲染器带有视口和剪刀,我有一个完整的黑色画布
- 在Aurelia.js中作曲确实有一个事件
- JS:有一个新的运算符"=>&”;
- 拉斐尔.2.1.0.min.js有一个无效的UTF-8字节序列