[英]Javascript Require
include.js
文件包含
var test = function(){
console.log("log from included file");
};
main.js
文件包含
require('./include.js');
test();
當我嘗試使用node main.js
命令運行main.js
它顯示
module.js:340
throw err;
^
Error: Cannot find module 'include.js'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (d:\Nishada\test\main.js:1:63)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
此錯誤的原因是什么?
您將需要導出測試功能以便在main.js
使用它
var test = function(){
console.log("log from included file");
};
module.exports = test
並在main.js
添加require
,如下所示
require('./include.js'); // assuming include.js is in same directory as main.js
如果您還require('include.js')
則節點將搜索include
在全球封裝
錯誤是指找不到文件,請確保您的文件與main.js位於同一目錄中,然后嘗試:
include.js
module.exports = {
test: function(){
console.log("log from included file");
}
}
main.js
var myInclude = require('include.js');
myInclude.test();
您require
在require
給出include.js
相對路徑。
如果兩者都在同一個目錄中,請像下面這樣寫
var include = require('./include.js');
include.test();
從include.js
您可以將它們定義為exports
函數
exports.test = function(){
console.log("log from included file");
};
更好
從include.js
僅導出一個具有多個功能的對象,而不是導出每個單獨的功能。
像波紋管
include.js
exports.test = obj;
obj.func1 = function(){};
obj.func2 = function(){};
main.js
var test = require('./include.js').test;
test.func1();
test.func2();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.