如何在 Django 项目(不仅是 CDN)中使用 TailwindCSS 的所有功能,包括具有自动重新加载和 CSS 缩小步骤的干净工作流程以做好生产准备?
原文由 David Dahan 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何在 Django 项目(不仅是 CDN)中使用 TailwindCSS 的所有功能,包括具有自动重新加载和 CSS 缩小步骤的干净工作流程以做好生产准备?
原文由 David Dahan 发布,翻译遵循 CC BY-SA 4.0 许可协议
3 回答5.1k 阅读✓ 已解决
4 回答4.4k 阅读✓ 已解决
5 回答1.9k 阅读
4 回答3.8k 阅读✓ 已解决
1 回答3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
1 回答4.5k 阅读✓ 已解决
(至少)有 3 种不同的方法可以用 Django 正确安装 Tailwind。
第一种方法:NPM
如果您在项目中需要节点,这是首选方法(例如:添加像 Daisy UI 这样的插件,或者有一个 SPA)
安装 tailwindCSS 和构建/缩小进程
tailwind.config.js
中配置模板路径。这可能类似于以下内容或略有不同,具体取决于您的模板所在的位置:your-django-folder
中,创建一个input.css
文件并至少在其中添加以下内容:package.json
文件中,您可以准备 npm 脚本以简化构建/缩小任务的执行(根据您的 Djangostatic
文件夹位置调整路径):在您的
jstoolchains
文件夹中,在编码时继续运行npm run tailwind-watch
。这将确保您的output.css
文件在您向代码中添加新的顺风类后立即重新生成。将此文件添加到.gitignore
。如果
tailwind-watch
运行没有错误,则output.css
文件现在应该用 CSS 填充。现在您可以实际使用 tailwindCSS 类,方法是将输出的 css 文件与 Django 调用加载静态文件一起包含到 Django 模板文件中:npm run tailwind-build
脚本。这将构建输出并删除未使用的类以确保较小的文件大小。在本地处理自动重新加载
现在为了简化开发而缺少的是在更改和保存 HTML 文件时自动重新加载 django 开发服务器。处理这个问题的最佳扩展是 Django-browser-reload 。只需按照设置说明进行操作,即可按预期工作
第二种方法: 独立 CLI
如果您的项目根本不需要节点,这是首选方法(例如:您的前端没有 SPA,您不需要像 daisyUI 之类的插件等)。
您可以按照 官方说明 手动安装它,或者使用这样的脚本外壳自动安装它:
对于 Tailwind 配置本身,请参考第一种方法,其中有详细说明。
第三种方法: django-tailwind 插件
这个插件产生的结果与使用 npm 方法手动获得的结果大致相同。该插件有据可查,是最新的,人们似乎对它感到满意。作为个人喜好,我认为这样的抽象有点太神奇了,我更喜欢自己构建工具链来了解幕后发生的事情。但也可以随意尝试这种方法,如果适合你就选择它!