Webpack,在现有文件中插入输出

x759pob2  于 2022-12-23  发布在  Webpack
关注(0)|答案(1)|浏览(157)

我是新的webpack和尝试输出在一个已经存在的基本文件我的最终捆绑。
我有一个函数main()并想在那里打印我的包

有人遇到过我同样的问题吗?你能帮我吗?先谢了!
谷歌,我发现了这个问题,但没有帮助Is it possible to add some defined lines of code to webpack's bundle in the dist folder

wnrlj8wa

wnrlj8wa1#

你可以用几种不同的方法来实现这一点。如果你在高级Webpack配置选项上没有任何运气,那么一个小的Node脚本应该可以做到这一点:

const fs = require('fs')
const bundleContents = fs.readFileSync('./path/to/bundle.js', 'utf8')
const fileToModify = fs.readFileSync('./path/to/file-to-modify.js', 'utf8').split('\n')
const lineToModify = fileToModify.findIndex((l) =>
    l.includes('INSERT HERE WEBPACK OUTPUT'))
fileToModify[lineToModify] = bundleContents
fs.writeFileSync('./path/to-destination-file.js', fileToModify.join('\n'))

请注意,这种方法 * 确实 * 并不健壮,需要查找硬编码的路径和行,尽管它可能比使用sed等的shell脚本更安全。一个更好的选择可能是使用codemod或其他理解AST的工具,或者继续尝试使用编译器钩子,如您所链接的答案中所示。

相关问题