首页 > 解决方案 > 如何将文本文件打包成 vscode 扩展

问题描述

我的扩展使用把手将替换变量应用于文本模板。我在哪里可以将模板文本存储在扩展中?

我目前将模板作为字符串存储在 extension.ts 文件中。宁愿使用存储模板文件的文件夹并将该文件夹包含在 vsce 包中。

标签: visual-studio-codevscode-extensions

解决方案


要存储、打包和访问文件,您可以执行以下操作:

  1. 在您的扩展根目录中创建一个子文件夹(与 相同级别package.json),让我们给它一个名称resources
  2. file.txt在该文件夹中放置一个
  3. 只要您不列出该文件,该文件就会被打包.vscodeignore(如 Gama11 所述)
  4. context.asAbsolutePath(...)使用API访问它

例子:

import * as path from 'path';
import * as fs from 'fs';

export function activate(context: ExtensionContext) {
    let fullFilePath = context.asAbsolutePath(path.join('templates', 'file.txt'));
    fs.readFile(fullFilePath, (err, data) => { ... });
}

推荐阅读