深层模块需要非标准的模块结构

好。 所以我想要做的是基本上有一个模块与一堆文件夹在它如下

publicmodulename |-lib |–index.js |-f1 |-index.js |-f2 |-index.js |-f3 |-index.js 

所有我想要能够做的是告诉npm,如果用户需要这个包(现在称之为publicmodulename),那么它将正常运行

授予我有我的main键在我的package.json设置为"./lib/index.js"

 require('publicmodulename'); // runs lib/index.js 

但是如果用户需要一个子文件夹

 require('publicmodulename/f1'); 

它不会错误。 我试了这个,似乎没有太好的工作。 任何人有任何build议?