python 提升生活和办公效率

[Django] 如何在Django中使用前端工具链

2021-05-19  本文已影响0人  alue

Django最大的不足在于其落后的前端工具链。现在前端开发几乎必备的包管理器(例如npm,yarn)以及工程化必备的webpack工具链,Django却不支持。Django开发的工作流中,后端的包管理可以用pip,而前端的包只能手动管理。所以,我最近的工程项目中,已不再使用Django提供的前端模块,仅仅把它当作API服务器。这的确很遗憾,因为Django的template引擎也有一些易用的特性,如此抛弃,真的有点不舍。那么有没有可能结合二者的优点呢?

django-webpack-loaderwebpack-bundle-tracker

经过一番探索,网上给出最靠谱的答案就是利用django-webpack-loaderwebpack-bundle-tracker 这两个插件。其原理是webpack-bundle-tracker 能够输出webpack的编译过程以及结果。django-webpack-loader 插件则是Django和webpack之间的桥梁,利用上面的编译结果,自动加载webpack打包后的静态文件。

需要用webpack生成的静态文件时,就在template上面使用下面一段模板语言,能够自动完成静态文件的注入。

{% load render_bundle from webpack_loader %}

{% render_bundle 'main' %}

简单的试了试,应该能够达到我想要的效果,明天有时间再研究。

上一篇下一篇

猜你喜欢

热点阅读