簡體   English   中英

Node.js不能在同一目錄中要求.js文件

[英]Node.js cannot require a .js file in the same directory

我有一個帶有main.js的node-webkit項目。 在最頂端,我有

var updater = require("./updater.js");

我在main.js目錄中有一個名為updater.js的文件。 當我運行應用程序時,我收到錯誤

Uncaught Error: Cannot find module './updater.js' 

updater.js有一行:

module.exports = "Hello!";

我不知道為什么它不能要求文件。 我見過另一個項目做同樣的事情。 我可以require定期npm模塊來自同一個就好了main.js

這是因為,當你使用node-webkit運行app(main.js)時,root(working)目錄就是index.html所在的位置,所以'./'指的是那個目錄而不是你的文件所在的目錄從中請求模塊。

您可以通過在'path'節點模塊中使用resolve方法輕松解決此問題,並將其輸出提供給工作文件中的require方法

只需執行以下操作:

var path = require('path');
var updater = require( path.resolve( __dirname, "./updater.js" ) );

編輯:全局節點對象'__dirname'(和其他)的信息可以在這里找到。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM