我只希望 Webpack 查看名为 ".stories" 的目录中的文件,但它们可以任意位于src/
目录结构中的任何位置。
例如,我对此的天真尝试如下所示:
/*
src/
some.story.js <-- don't get this
|_components/
|_Button/
|_ .stories/ <--
|_ index.js <-- ignore this
|_ utils.js <-- ignore this
|_ main.story.js <-- get this
|_Forms/
|_ TextField
|_ .stories/ <-- same kind of thing
*/
// require.context API
// require.context(directory to search, shouldSearchSubDirs?, fileNameRegex)
require.context('src/**/.stories', true, /.story.js$/)
到目前为止,API 似乎希望我对文件名进行所有模式匹配。但是仅文件名不足以排除其他目录中.story.js
文件。我想允许.story.js
目录之外.stories/
文件,并让 Webpack 忽略它们。
这可能吗?我错过了什么?
在阅读官方文档时,这意味着第一个参数指定了一个特定的目录:
它允许您传入一个目录进行搜索,一个标志指示 是否也应该搜索子目录,以及常规 要匹配文件的表达式。
对此的一种解读与我的目标背道而驰,但没有什么明确说明这是不可能的。Webpack 是一个复杂的工具,很容易误解它的功能。
我知道已经很久了。但我会为其他人解决答案。
require.context('../src/components/', true, /.stories/[a-zA-Z0-9]+.story.js$/);