如何在Django模板中分离Javacscript函数

时间:2018-11-09 00:25:38

标签: javascript python django file static

我正在使用django 2.1框架工作,我正在使用的html模板存在问题,该模板具有多个页面,例如主页,关于,联系人和支持,并且每个页面都有java脚本功能来自动执行页面中的操作,例如滑块在每个页面的末尾 所以我决定让我的base.html包含两个页面的页脚和页眉,因为它们相似。所以这里的问题是我将这些js函数放在哪里 1.将它们保留在特定页面中,并扩展它们不起作用的base.html 2.将它们附加到base.html函数的某些属性也不起作用。 任何建议,请

1 个答案:

答案 0 :(得分:0)

一般来说,这个问题通常被问到,如果我在所有模板之间共享任何共享的JS,则将该JS放在base.html中。如果我编写特定于特定页面的功能和/或希望以每页不同的方式调用函数,则将其放在{% block js %}块中。

示例 base.html

...
<script type="text/javascript">
    function sharedFunction() {
        //Do something
    }
</script>

{% block js %}
{% endblock %}
...

somepage.html

...
{% block js %}
    <script type="text/javascript">
        document.querySelector("#page-element").onclick = sharedFunction()
    </script>
{% endblock %}
...

希望这会有所帮助!