gpt4 book ai didi

javascript - Browserify 中的子模块

转载 作者:太空宇宙 更新时间:2023-11-04 02:25:38 24 4
gpt4 key购买 nike

/foo
/bar.js
/foobar.js
/index.js

在node.js中,如果您需要一个目录(require('foo')),它会查找该目录并找到一个index.js文件并返回该文件中的所有导出,因此我可以将该目录的内容捆绑在一个index.js文件中。因此,如果 index.js 已经包含 bar 和 foobar,我就不必单独要求它们。

但是这种方法不适用于 browserify。 browserify 似乎唯一能理解的就是相对路径。

/star
/star.js
/starfoo.js
/index.js
/foo
/bar.js
/foobar.js
/index.js

换句话说,我想将我的项目分成子模块,在目录上调用 require ,就像我在依赖项上调用 require 一样。例如,在 star.js 文件中,我希望能够 require('foo') 并获取 bar.js 和 foobar.js 的导出(只要/foo/index.js 导入 bar.js 和 foobar.js)

编辑:查看react源代码,我认为我所描述的是可能的

https://github.com/facebook/react/blob/master/src/isomorphic/ReactIsomorphic.js在此文件中,他们在第 14 行调用了 React-Children 上的 require。

var ReactChildren = require('ReactChildren');

然而,React Children 的目录更深。 https://github.com/facebook/react/blob/master/src/isomorphic/children/ReactChildren.js

这个映射是在哪里定义的?

最佳答案

没有办法指定基本目录,因为这不是 Node 模块的工作方式。如果您需要非相对路径,请使用 node_modules 目录。如果您希望 require('foo') 在任何目录中工作,只需从项目根目录创建一个符号链接(symbolic link)即可:

ln -s foo node_modules/foo

关于javascript - Browserify 中的子模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30689808/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com