Browserify中的子模块
/foo
/bar.js
/foobar.js
/index.js
在node.js中,如果你需要一个目录(require('foo')),它会查看那个目录并找到一个index.js文件,并返回我在该文件中的任何导出,所以我可以将这些内容打包index.js文件中的目录。 因此,如果index.js已经包含它们,我不必单独要求bar和foobar。
但是,这种方法不适用于browserify。 似乎只有浏览器能够理解的是相对路径。
/star
/star.js
/starfoo.js
/index.js
/foo
/bar.js
/foobar.js
/index.js
换句话说,我想将我的项目分成子模块,在目录上调用require,就好像我正在调用require的依赖关系一样。 例如在star.js文件中,我希望能够要求('foo')并获取bar.js和foobar.js的导出(只要/foo/index.js导入bar.js和foobar。 JS)
编辑:看看反应源代码,我想我所描述的是可能的
https://github.com/facebook/react/blob/master/src/isomorphic/ReactIsomorphic.js在这个文件中,他们在第14行调用React-Children的require。
var ReactChildren = require('ReactChildren');
然而,对儿童的反应更深。 https://github.com/facebook/react/blob/master/src/isomorphic/children/ReactChildren.js
这个映射在哪里定义?
没有办法指定基本目录,因为这不是节点模块的工作方式。 如果您想要非相对路径,请使用node_modules
目录。 如果你想要require('foo')
从任何目录工作,只需从你的项目根目录建立一个符号链接:
ln -s foo node_modules/foo
链接地址: http://www.djcxy.com/p/32893.html