我正在使用后端的 Django 和前端的 Backbone 构建一个混合 Web 应用程序。
结构如下:我在 Django 模板中生成所有的 HTML,request.is_ajax
用于决定返回哪些模板,并根据需要使用 Backbone 拉入 HTML(我这样做是因为我想支持非 JavaScript 用户)。
无论如何,我的问题是这个。随着我的 JavaScript 代码变得越来越复杂,我希望能够自动执行以下操作:
- 异步 JavaScript 加载
- 连接和缩小 CSS 文件
- 连接和缩小 JavaScript 文件
- JS-linting
我不太担心图像优化或包管理。这可能与我的设置有关吗?目前它是一个标准的 Django 应用程序:
/media
/js
main.js <-- Backbone code is in here
/plugins
backbone.js
underscore.js
/css
main.css
results.css
/img
/myapp
admin.py
models.py
views.py
/templates
/myapp
index.html <-- references to all JS and CSS files here
我不确定我是否应该使用Yeoman(或只是grunt)或Brunch,或者是否有更简单的方法。无论我使用什么,我不确定是否可以将其放入js
目录中,或者模板的位置是否会使事情复杂化。
目前我知道如何使用 require.js 来异步加载 JS,但我不知道如何连接、lint 等 - 因此寻找一个工具。也许我应该只写一个shell脚本:)