gpt4 book ai didi

javascript - 在 Django 中使用 JavaScript 的最佳实践

转载 作者:搜寻专家 更新时间:2023-11-01 04:52:54 25 4
gpt4 key购买 nike

我想用一些 JavaScript/jQuery 来插入我的 Django 项目。为了从一开始就做好,我想知道哪种组织 .js 文件的方式是最佳方式。

加载一个大文件比加载许多小文件包含更少的开销,而且因为它在代码中看起来更清晰,我考虑制作一个全局 .js 文件并将其包含在 base.html 中(每个模板都继承自该文件) .然而,结果是,JavaScript 会尝试分配所有事件绑定(bind),即使事件应该绑定(bind)到的元素不在当前文档中。所有的 jQuery 选择器都必须完成他们的工作,效率不能太高。根据早期的 Web 开发经验,我知道可以执行类似 if(location.href == '/some/url/') { (JavaScript code) ... } 的操作。在这种情况下,这对我来说似乎不切实际,因为随着 URL 的变化,我必须更改 URLconf 和 .js 文件(同时使用 reverse() 和 {% url %} 来防止在其他地方发生这种情况)。我想不可能在这里使用命名的 URL?

有没有人知道如何组织 JavaScript,一方面没有每个模板的文件,又不会不必要地降低性能?

最佳答案

我不知道这个问题是否特定于 Django - 在各种系统中管理 Javascript 都会出现类似的问题。

也就是说,我通常尝试将我的 Javascript 文件分层,以便真正的全局脚本和库包含在一个文件中,特定于站点部分的脚本包含在一组特定于部分的文件中,并且特定于脚本单个页面包含在另一个站点的页面特定文件中(或内联代码,具体取决于上下文)。

Django 对这种方法有很好的支持,因为您也可以对模板进行分层。在您的 base.html 模板中包含全局脚本,然后创建一个继承自 base.htmlmysection-base.html 模板并添加该部分特定的 Javascript(和 CSS)文件。然后该部分中的子页面可以继承 mysection-base.html 而不是 base.html,并且它们都可以访问特定于部分的脚本。

关于javascript - 在 Django 中使用 JavaScript 的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7249712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com