Visual Studio Code - 对文件夹中的所有文件应用快速修复

问题描述 投票:0回答:1

我们正在从 JavaScript 迁移到 TypeScript。 在 vscode 中,我使用快速修复“添加所有缺失的成员”、“从使用情况推断所有类型”。 此外,我使用一个名为 TsAutoReturnType 的插件及其命令“TsAutoReturnType: File”。 这声明了类的字段,向参数添加类型,并向函数/方法添加返回类型。

现在,我想对文件夹中的每个文件调用这些命令。

  • 是否可以使用内置功能编写或编写 vscode 命令?
  • 是否可以一次将命令应用于多个文件或文件夹中的所有文件(递归)?
  • vscode 是否有命令行界面来从脚本调用其命令?
visual-studio-code automation scripting command action
1个回答
0
投票

您可以编写一个 Node.js 脚本来读取 TypeScript 文件并应用所需的转换。您可以使用像 typescript 这样的库以编程方式操作您的代码。

const fs = require('fs');
const path = require('path');

// Function to process a TypeScript file
function processFile(filePath) {
    // Read the file, apply transformations, and write back
    // This is where you'd integrate your logic to add types, etc.
}

// Function to traverse directory
function traverseDir(dirPath) {
    fs.readdir(dirPath, (err, files) => {
        if (err) throw err;

        files.forEach(file => {
            const filePath = path.join(dirPath, file);
            fs.stat(filePath, (err, stat) => {
                if (err) throw err;

                if (stat.isDirectory()) {
                    traverseDir(filePath); // Recursively traverse directories
                } else if (file.endsWith('.ts')) {
                    processFile(filePath); // Process TypeScript files
                }
            });
        });
    });
}

// Start processing from the target directory
traverseDir('path/to/your/typescript/files');

© www.soinside.com 2019 - 2024. All rights reserved.