Django中的独立前端模块
我正在尝试创建独立的前端模块(HTML、CSS和JS),以集成到Django应用程序中。 最好的例子就是一个“地图”模块,我想把它包括在各种不相关的页面中,可能在每个页面的不同位置 我有一个模板,它提供了地图所需的HTML代码,我希望CSS和JS代码也能包含在这个模板中,以便于处理前端依赖关系。 到目前为止,这可以通过使用Django中的独立前端模块,django,frontend,Django,Frontend,我正在尝试创建独立的前端模块(HTML、CSS和JS),以集成到Django应用程序中。 最好的例子就是一个“地图”模块,我想把它包括在各种不相关的页面中,可能在每个页面的不同位置 我有一个模板,它提供了地图所需的HTML代码,我希望CSS和JS代码也能包含在这个模板中,以便于处理前端依赖关系。 到目前为止,这可以通过使用{%include%}标记来实现 p>但是在HTML页面中间包含样式表和脚本是一个非常糟糕的做法,当涉及到前端性能时。(CSS应包含在中,JS应包含在末尾) 如果{%incl
{%include%}
标记来实现
<> p>但是在HTML页面中间包含样式表和脚本是一个非常糟糕的做法,当涉及到前端性能时。(CSS应包含在
中,JS应包含在
末尾)
如果{%include%}
标记作为包含它们的模板的一部分呈现,并且可以覆盖{%block%}
标记,那么我的问题就可以解决了。Django的情况并非如此<代码>{%include%}标记首先呈现为HTML,然后才被包含,因此它们不能覆盖{%block%}
标记
环顾过去围绕这一主题的问题表明,通常的做法是使用模板继承(即{%extends%}
)而不是{%include%}
,但由于我希望我的模块是独立的,所以我不知道如何在我的案例中使用继承
在维护前端性能最佳实践的同时,如何在模板中维护前端依赖关系
谢谢 要首先创建地图模板标记,请使用 关于静态文件的问题,我将创建一个相关的模板标记,将静态文件引用转储到当前模板中。然后将该模板标记包含在块中 如果您的基本模板位于base.html中,而页面模板位于page.html中: base.html
<html>
<head>
{% block css %}
<link rel="stylesheet...
{% endblock %}
</head>
<body>
{% block content %}{% endblock %}
{% block scripts %}{% endblock %}
</body>
</html>
要首先创建地图模板标记,请使用 关于静态文件的问题,我将创建一个相关的模板标记,将静态文件引用转储到当前模板中。然后将该模板标记包含在块中 如果您的基本模板位于base.html中,而页面模板位于page.html中: base.html
<html>
<head>
{% block css %}
<link rel="stylesheet...
{% endblock %}
</head>
<body>
{% block content %}{% endblock %}
{% block scripts %}{% endblock %}
</body>
</html>
谢谢与3种不同的包含标签相比,包含标签有什么优势?我不太理解你的问题。上面示例中的标记
{%map\u html%}
将是一个包含标记。谢谢!与3种不同的包含标签相比,包含标签有什么优势?我不太理解你的问题。上面示例中的标记{%map\u html%}
将是一个包含标记。