关于部署前端项目的迷思

发布于 2022-09-11 21:53:46 字数 833 浏览 10 评论 0

前端新手正在做一个react 项目 + firebase 练手。bundler用的是parcel。

按我的理解,一个前端的项目,我用 parcel build之后,生成的那个dist 文件夹,里面应该就是我production-ready files了。然后我刚才用firebase把它deploy了,也成功了。按理说parcel应该会把我们的所有js 打包成一个大的js文件(除非我特别写parcel build index.html --no-minify)。这样的话deploy出来的网站,别人就在source里面找不到我写每个component的js 文件了。

但奇怪的是,我刚才在我deploy出来的项目的source里,还是找到了我写的每个组件对应的js文件。图片描述

请问这是问什么呢?难道我对"打包"这个概念的理解有错吗?

另外一个问题是,我也在Sources里面找到我的 firebaseConfig.js ,里面有我的appid key,我觉得这样不是特别安全。因为我用的是firebase给的前端的sdk,我自己没有搭建服务器,所以我不知道是不是这样就无法避免暴露自己firebaseConfig了?

最后一个问题就是,我用的parcel build之后,本以为会打包成一个体积很小的文件,结果
图片描述

最大的那个.js.map文件有7mb之大。请问这个是正常的吗?还是说我哪里搞错了?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

初懵 2022-09-18 21:53:46

不管是webpack还是parcel,不进行代码分割都会打包成为一个文件。所以为了避免文件过大,影响加载性能,应该进行代码分割,按需加载。

因为生产环境,代码是压缩过的,所以很难调试,Sourcemap的作用就是将压缩文件映射到源代码,也是就你在开发工具上面看到的。

SourceMap只有在打开开发者工具的时候会加载。

SourceMap是可以关闭掉的,如果你不想暴露你的源代码。

暗喜 2022-09-18 21:53:46

大早上5 6点在学习, 先敬佩一波, 你的这个问题去搜一下sourceMap这个东西看下就都解决了

一张白纸 2022-09-18 21:53:46

map 文件通常都会是被标记的 js 的文件的几倍大小,因为 map 文件要对这个文件做标记用以对应。之所以在浏览器里可以看到分立的文件,也是 map 文件的功劳,如果不想让别人看到,可以不把 map 文件部署上去,或者构建时直接配置为不产生 sourceMap

看春风乍起 2022-09-18 21:53:46

兄弟是做后端出身的吧?前端的所有东西都会暴露出来的,涉及到安全性的问题前端也请求不了。

还有前端的打包其实是一个对模块化、工程化开发的整合,实现自动化,而不是像APP那样封装和加密。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文