返回
自动生成目录md文件,让项目结构一目了然
前端
2023-10-22 17:36:37
目录对于任何项目来说都是至关重要的,因为它提供了项目结构的鸟瞰图。然而,手动维护目录既耗时又容易出错。想象一下一个大型项目,其中包含数百个文件和文件夹。手动更新目录可能会花费数小时,而且很容易出现遗漏或错误。
这就是自动化发挥作用的地方。使用 node.js 脚本,我们可以自动生成目录 md 文件,其中包含项目中所有文件和文件夹的相对路径。此外,脚本还可以从文件头部注释中提取信息,从而进一步增强目录的实用性。
让我们逐步了解如何使用 node.js 脚本自动生成目录 md 文件。
先决条件
在继续之前,确保您已安装以下内容:
- Node.js
- 一个文本编辑器或 IDE
设置项目
创建一个新项目并导航到项目目录。创建一个名为 generate-toc.js
的新文件。这将是我们的 node.js 脚本。
编写脚本
在 generate-toc.js
文件中,粘贴以下代码:
const fs = require("fs");
const path = require("path");
// 获取当前工作目录
const cwd = process.cwd();
// 扫描项目文件并生成目录
const generateToc = () => {
// 获取当前目录下的所有文件和文件夹
const files = fs.readdirSync(cwd, { withFileTypes: true });
// 创建目录文件
const toc = fs.createWriteStream("目录.md");
// 遍历文件和文件夹
files.forEach((file) => {
// 如果是文件夹,递归生成目录
if (file.isDirectory()) {
generateToc(path.join(cwd, file.name));
} else {
// 如果是文件,获取文件路径和头部注释
const filePath = path.join(cwd, file.name);
const fileContent = fs.readFileSync(filePath, "utf-8");
const headerComment = fileContent.match(/^\/\*[\s\S]*?\*\/$/ms);
// 将文件路径和头部注释写入目录文件
toc.write(`- [${file.name}](${filePath})`);
if (headerComment) {
toc.write(`\n ${headerComment[0]}\n`);
}
}
});
// 关闭目录文件
toc.end();
};
// 调用 generateToc 函数生成目录
generateToc();
运行脚本
在终端中,导航到项目目录并运行以下命令:
node generate-toc.js
脚本将扫描项目文件并生成一个名为 “目录.md” 的文件。该文件将包含项目中所有文件和文件夹的相对路径。此外,它还将包含从文件头部注释中提取的信息(如果存在)。
结论
使用 node.js 脚本自动生成目录 md 文件是一种简单而有效的方法,可以节省时间并提高准确性。通过从文件头部注释中提取信息,目录变得更加有用和信息丰富。下次需要为项目生成目录时,不妨尝试一下这种方法。