为什么要使用 django-webpack-loader?

Why should we use django-webpack-loader?

我同时使用 webpack 和 django。现在我每次都将捆绑资产移动到django的/static/目录,所以我想做更有效的过程。
我看了一些文章,很多人推荐使用django-webpack-loader,但我并不完全理解它的作用。

我已经阅读了下面的官方文档。
https://owais.lone.pw/blog/webpack-plus-reactjs-and-django/
https://406.ch/writing/our-approach-to-configuring-django-webpack-and-manifeststaticfilesstorage/

我认为这是为了收集位于 django 项目之外的捆绑资产,但它似乎与从 django 项目创建符号 link 到 webpack 中的 dist/ 目录几乎相同。
django-webpack-loader还有其他有用的功能吗?

这是一个方便的小工具。这个 webpack loader 的要点是创建一种机制,以自动方式 link 到你的最新包。

提供了一个 "render_bundle" 模板标签,输出 link 以加载到最新的 JS 或 CSS 包中。

该标签基于捆绑包代码的哈希值(因此如果您的捆绑包发生变化,这也会发生变化)因此浏览器将始终加载您的静态资产的最新版本。当在移动设备上进行测试或执行 'hard' 页面刷新并不简单时,这种缓存清除技术非常有用。

我相信这是通过引用 BundleTracker 输出的模板标签实现的,它在 webpack-stats.json.

中输出关于你的 webpack 包状态的元数据

https://www.npmjs.com/package/webpack-bundle-tracker

我认为您可能错过了 webpack 将附加一个随机哈希码(因此新构建会破坏缓存)。如果没有一些特殊的逻辑,django 将不知道如何计算哈希值。

在我看来,其他回答者提到的所有其他内容都是额外的奖励,可以让您的生活更轻松。