如何阻止React Webpack包含来自package.json

时间:2018-05-07 13:10:10

标签: reactjs security webpack version package.json

我最近偶然发现了对我来说安全问题。当我查看部署到我网站的main.[...].js文件时,我注意到它包含了我的整个package.json文件,其中包含一些我不想暴露给世界的脚本。

这可能正在发生,因为我导入文件以获取当前部署版本并使用任何错误报告进行记录。如何在不实际导入文件并公开文件的情况下从package.json文件中获取该版本?

即使我只导入{ version }而不是整个文件,Webpack仍然会打包整个文件(这让我想知道这甚至是什么意思?)。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

json文件的树摇动就像你需要它是webpack 4.x中的一个新功能 这是门票:
https://github.com/webpack/webpack/issues/5578

您可以编写一个脚本来读取版本号并在webpack运行之前将其写入自己的文件中,如果您必须保留3.x,则可以导入此脚本,但希望create-react-app很快就会更新。这里已经有一个公开的拉动请求:
https://github.com/facebook/create-react-app/pull/4077