эффективная загрузка файлов jquery и javascript в шаблоны django
В одном из моих проектов django я использую множество пользовательских jquery-скриптов и множество jquery-плагинов с открытым исходным кодом. Теперь, если я загружу все скрипты jquery в свой базовый шаблон, я буду загружать много неиспользуемого кода javascript в шаблоны, которые не требуют каких-либо / некоторых загруженных файлов jquery, что повлияет на время загрузки страницы этого конкретный шаблон.
Итак, текущий подход, который я использую,
Загрузите базовые скрипты jquery в базовый шаблон (те, которые требуются для каждого шаблона)Определите блок для js в базовом шаблоне и выборочно загрузите необходимые javascript-коды для каждого шаблона.{% block selective_js %}{% endblock selective_js %}
Вышеописанный подход работает хорошо, но единственная проблема, которую я вижу, - много повторений кода в шаблонах. Скажем, например:
У меня есть следующие файлы javascript
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.1.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.2.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.3.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.4.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.5.js"></script>
Теперь в более чем одном шаблоне мне нужны все вышеупомянутые файлы javascript, а также я хочу инициализировать некоторые методы в упомянутых скриптах. Поэтому в настоящее время я должен сделать это во всех шаблонах:
{% block selective_js %}
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.1.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.2.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.3.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.4.js"></script>
<script type="text/javascript" src="{{ STATIC_URL }}js/jquery.5.js"></script>
<!-- Initialize Methods -->
<script type="text/javascript">
$(document).ready(function() {
$('some_element').initializeScript();
});
</script>
{% endblock selective_js %}
Это означает, что в шаблонах много повторений кода.
Вопрос:Как я могу предотвратить повторение кода без необходимости загружать неиспользуемый код JavaScript эффективно?