使用 Babel watcher 转译时如何忽略父目录 "src"
How to ignore the parent "src" directory when transpiling using Babel watcher
我的代码具有目录结构:
project-root/
└── src/
└── main.js
当我运行默认的 Babel 文件观察器时,代码被转译到一个 dist 文件夹中,包括它路径中的 src 目录,如下所示:
project-root/
└── src/
├── main.js
dist/
└── src
└── main.dist.js
我想要的是将 src 从路径中排除 - 换句话说,将 src 中的转译代码 "unwrapped" 并直接编译到 dist 中,如下所示:
project-root/
└── src/
├── main.js
dist/
└── main.dist.js
是否可以更改观察器配置来实现此目的?我想不通!非常感谢任何帮助。
这是 --out-dir
Babel CLI 选项行为 - 它会在目标目录中重新创建源文件夹结构(相对于工作目录)。
这里有 2 个选项:
- 改用
--out-file
- 将
src
设置为您的工作目录
第一个选项的可能设置:
Arguments: $FilePathRelativeToProjectRoot$ --out-file dist/$FileNameWithoutExtension$.js --source-maps --presets env
Output paths to refresh: dist$FileNameWithoutExtension$.js:dist$FileNameWithoutExtension$.js.map
第二个:
Arguments: $FileDirPathFromParent(src)$$FileName$ --out-dir $ProjectFileDir$/dist --source-maps --presets env
Output paths to refresh: $ProjectFileDir$/dist/$FileDirPathFromParent(src)$FileNameWithoutExtension$.js:$ProjectFileDir$/dist/$FileDirPathFromParent(src)$FileNameWithoutExtension$.js.map
Working directory: $ContentRoot$\src
我的代码具有目录结构:
project-root/
└── src/
└── main.js
当我运行默认的 Babel 文件观察器时,代码被转译到一个 dist 文件夹中,包括它路径中的 src 目录,如下所示:
project-root/
└── src/
├── main.js
dist/
└── src
└── main.dist.js
我想要的是将 src 从路径中排除 - 换句话说,将 src 中的转译代码 "unwrapped" 并直接编译到 dist 中,如下所示:
project-root/
└── src/
├── main.js
dist/
└── main.dist.js
是否可以更改观察器配置来实现此目的?我想不通!非常感谢任何帮助。
这是 --out-dir
Babel CLI 选项行为 - 它会在目标目录中重新创建源文件夹结构(相对于工作目录)。
这里有 2 个选项:
- 改用
--out-file
- 将
src
设置为您的工作目录
第一个选项的可能设置:
Arguments: $FilePathRelativeToProjectRoot$ --out-file dist/$FileNameWithoutExtension$.js --source-maps --presets env
Output paths to refresh: dist$FileNameWithoutExtension$.js:dist$FileNameWithoutExtension$.js.map
第二个:
Arguments: $FileDirPathFromParent(src)$$FileName$ --out-dir $ProjectFileDir$/dist --source-maps --presets env
Output paths to refresh: $ProjectFileDir$/dist/$FileDirPathFromParent(src)$FileNameWithoutExtension$.js:$ProjectFileDir$/dist/$FileDirPathFromParent(src)$FileNameWithoutExtension$.js.map
Working directory: $ContentRoot$\src