node_module文件夹

┣ app.js

│result.js

│┣ round.js

│┣ rectangle.js

│┣ index.js

//app.js
var result = require("./result");
console.log(result.round.area(5));
console.log(result.rectangle.area(5,2));

//index.js
var rectangle = require("./rectangle.js");
var round = require("./round.js");
exports.round = round;
exports.rectangle = rectangle;

 

 

如果我们require()没有.js后缀,此时NodeJS会认为我们在引入一个文件夹,并且执行这个文件夹内部的index.js

var result = require("./result");
等价于下面的
var result = require("./result/index.js");

注意的是不能省略./

node_modules文件夹

NodeJS中,如果文件夹内部存放了node_modules文件夹,此时内部的文件引入的时候就不用写./了

┣ app.js

│node_modules

││result.js

││┣ round.js

││┣ rectangle.js

││┣ index.js

此时result文件夹被一个node_modules文件夹包裹了,此时我们引入时候也发生了变化

var result = require("result");
console.log(result.round.area(5));
console.log(result.rectangle.area(5,2));

 

 

总结,如果我们使用require去引入文件,不加./是引入node_modules文件夹内部的文件,否则就是本地其他文件

require内容

引用地址

require("./result.js")

同目录下面的result.js

require("./result ")

同目录下面的result文件夹内部的index.js

require("result")

node_modules文件夹内部的result文件夹内部的index.js

require("result.js")

node_modules文件夹内部的result.js

posted @ 2021-10-18 17:31  keyeking  阅读(336)  评论(0编辑  收藏  举报