簡化,關於JavaScript的使用我的項目的結構如下:在使用它的每個文件中重新聲明一個變量?
base.html
(項目的基本模板)
{% block js %}{% endblock %}
<script type="application/javascript" src="/base.js"></script>
child.html
(模板,從base.html
繼承)
{% block js %}
<script type="application/javascript">
{# context_variable is a JSON string generated by handler #}
specialObj = {{ context_variable|safe }};
</script>
{% endblock %}
base.js
(項目主文稿)
function specialFn() {
// something is done with specialObj here...
}
if (specialObj)
specialFn();
問題是:爲便於閱讀(或其他某些原因),是否應該爲base.js
重新聲明obj
?
關於* type =「application/javascript」*,請參見[*爲什麼IE8不能在腳本標記中識別type =「application/javascript」?](http://stackoverflow.com/questions/1288263/爲什麼-犯規-IE8-識別型應用程序的JavaScript功能於一個腳本標籤)。只需將其刪除,默認值爲* text/javascript *,因此除非極少數情況下,在極其舊的IE版本(以及其他一些古老而隱蔽的瀏覽器)中,除非極少數情況下才需要type屬性。 – RobG
如果您的意思是* specialObj *,則不會在任何地方聲明。取決於創建全球的任務並不是一個好策略。聲明它(即使用[* VariableStatement *](http://ecma-international.org/ecma-262/5.1/#sec-12.2))多次不是問題,只是不整潔。 – RobG
@RobG(在「application/javascript」上):我明白了。謝謝。
(在「specialObj」上)爲什麼不整潔這些聲明(帶有VariableStatement)是否在不同的文件中重複? – Vleseg