博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
nodejs中require的路径是一个文件夹时发生了什么
阅读量:6248 次
发布时间:2019-06-22

本文共 609 字,大约阅读时间需要 2 分钟。

node中使用require的时候如果路径是一个文件夹时,或者特殊的情况require('..');require('.');

这是node实战这本书里说的情况,但是我在node6.9版本中发现不完全是这样,可能是后来做了修改。下面说说在6.9下require路径的过程。

这里以require('.')说明,一个点说明要require当前目录,这时候,node会优先查找package.json这个文件(即使有index.这个文件也会先被忽略),然后查找package.json文件里的main键值对应的值xx.js,然后拿到这个值进行加载相应的文件,否则,如果没有键值main或者没有找到xx.js则开始查找当前目录下有没有index.js,如果有则使用,否则出错。下面是具体的实践:

以下文件都在一个文件夹下

example.js

var test = require('.');

console.log(test.a);

package.js

{

"main":"./test1.js"
}

test1.js

module.exports = {

a:1
}

index.js

module.exports = {

a:3
}

我们可以看到,执行example脚本时输出的是1,如果把main的项去掉或者把main对应的值改成不存在的文件,则会加载index.js,输出3,如果不存在这个index.js则报错

你可能感兴趣的文章
Lync部署之存档监控服务器
查看>>
全面测试1.235用后感(新手要入来学野了哟)高手免进
查看>>
vs2012更新版本到3 出现异常
查看>>
Windows域环境下部署ISA Server 2006防火墙(三3)
查看>>
exchange部署在不同服务器上的一些区别
查看>>
Spring MVC 图片上传和下载
查看>>
我的友情链接
查看>>
nginx配置
查看>>
js获取本周、本季度、本月、上月的开端日期、停止日期
查看>>
day18 java 语言中的Map集合
查看>>
APP公共测试点
查看>>
remote tools
查看>>
技术流, 又充满争议的网站
查看>>
你可能还不知道的7个jQuery插件
查看>>
Grails 技巧 - Grails and Hibernate
查看>>
Github使用教程(一)--搭建Github环境
查看>>
Spring 事务使用详解
查看>>
九款可免费下载的app导航条
查看>>
ORACLE 限制特定IP访问数据库 访问白名单
查看>>
bash脚本中的显示效果
查看>>