关于module.paths的困惑
为什么我的module.paths返回的结果中第一个永远是repl
$ pwd
/Users/xh/project/byd
$ node
> module.paths
[ '/Users/xh/project/byd/repl/node_modules',
'/Users/xh/project/byd/node_modules',
'/Users/xh/project/node_modules',
'/Users/xh/node_modules',
'/Users/node_modules',
'/node_modules',
'/Users/xh/.node_modules',
'/Users/xh.node_libraries',
'/Users/xh/.nvm/versions/node/v7.2.1/lib/node' ]
>
4 回复
应该是因为你进入了 repl 模式(read–eval–print loop)吧,如果是通过脚本文件执行的话,就不包含 repl 了:
$ pwd
/d/workspace/czwm
$ node
> module.paths
[ 'D:\\workspace\\czwm\\repl\\node_modules',
'D:\\workspace\\czwm\\node_modules',
'D:\\workspace\\node_modules',
'D:\\node_modules',
'C:\\Users\\xxx\\.node_modules',
'C:\\Users\\xxx\\.node_libraries',
'C:\\Program Files\\lib\\node' ]
$ pwd
/d/workspace/czwm
$ echo "console.log(module.paths);" >> test.js
$ node test.js
[ 'D:\\workspace\\czwm\\node_modules',
'D:\\workspace\\node_modules',
'D:\\node_modules' ]
@xcatliu 你说得对
@xcatliu 太感谢了原来如此,学习了。