如何将文本文件打包到vscode扩展中

时间:2019-11-01 13:46:17

标签: visual-studio-code vscode-extensions

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

我当前正在将模板作为字符串存储在extension.ts文件中。宁愿使用一个存储模板文件的文件夹,并将该文件夹包括在vsce包中。

1 个答案:

答案 0 :(得分:1)

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

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

示例:

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) => { ... });
}