0

与标题所暗示的差不多。我想在项目中的每个 javascript 文件旁边创建一个元数据文件。所以我需要一个完全不改变内容的 webpack 加载器,只提取一些元数据并将其写入文件。最好的方法是什么?fs.writeFileSync似乎工作正常,但我不知道是否应该使用它,因为似乎一些 webpack 指南建议使用memory-fswebpack 的内存文件系统。

4

1 回答 1

0

所以这需要一段时间才能找到并且似乎很少提及,但 webpack 加载器实际上有一个this.emitFile专门用于此目的的方法。这是一些示例用法:

function extractMeta(content) {
    // extract and return metadata for file
}

module.exports = function(content) {
    console.log('extracting metadata and writing to file');

    // get source filename, strip file extension and append ".meta"
    const filename = this.resourcePath.split('/').pop().split('.')[0] + '.meta'

    this.emitFile(filename, extractMeta(content));
    return content; // return the source file unchanged
};
于 2019-08-22T21:25:15.997 回答