2014-06-11 5 views
0

나는 이것을위한 자원을 찾을 수 없다.Symfony2 Assetic jQuery 구성

내 모든 페이지가 줄기가되는 base.twig.html 템플릿이 있습니다. JQuery와, 부트 스트랩 및

{% block reqscripts %} 
    {% javascripts '@jquery' '@bootstrap_js' '@sc_js' %} 
    <script type="text/javascript" src="{{ asset_url }}"></script> 
    {% endjavascripts %} 
{% endblock %} 

{% block extrajs %} 

{% endblock %} 

필요한 스크립트 부하와 것은 잘 작동 자바 스크립트 일부 사용자 지정 : 바닥에 나는 사이트에 대한 필요한 JS를로드!

필요한 경우 특정 js 페이지 을로드 할 수 있도록 빈 "extrajs"블록을 남겼습니다. 나는 그 블록을 무시하고 다른 자바 스크립트 파일을로드 할 때

그들은

$ not defined 
jQuery not defined 

오류를 throw합니다.

왜 이런 일이 발생하며 jquery 오류없이 extrajs 블록을 처리하도록 템플릿을 설정하려면 어떻게해야합니까?

필요한 경우 assetic 구성을 표시 할 수 있지만 jquery가 정상적으로로드되므로 문제가 있는지 의심 스럽습니다.

편집 그래서 "extrajs"블록의 스크립트는 실제로 실행,하지만 오류가 발생합니다. 이 작업을 수행하는 올바른 방법은 무엇입니까? 당신이 볼 수 있듯이

가 편집 해골이 base.html.twig에 대한

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <link href="//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet"> 
    {% block reqstyles %} 
     {% stylesheets '@SCMainBundle/Resources/public/css/fonts.css' %} 
     <link rel="stylesheet" href="{{ asset_url }}" screen="media"/> 
     {% endstylesheets %} 

     {% stylesheets '@bootstrap_less' %} 
     <link rel="stylesheet" type="text/css" href="{{ asset_url }}"/> 
     {% endstylesheets %} 
     {% block extracss %} 

     {% endblock %} 
    {% endblock %} 
    <title>{% block titleblock %}{% endblock %}</title> 
</head> 
<body {% block bodyid %}{% endblock %}> 

{% block header %} 
    {% include 'SCMainBundle:Templates/Header:basic-header.html.twig' %} 
{% endblock %} 

{% block nav %} 
{% endblock %} 

{% block content %} 

{% endblock %} 


{% block footer %} 
    {% include 'SCMainBundle:Templates:footer.html.twig' %} 
{% endblock %} 

{% block reqscripts %} 
    {% javascripts '@jquery' '@bootstrap_js' '@sc_js' %} 
    <script type="text/javascript" src="{{ asset_url }}"></script> 
    {% endjavascripts %} 
    {% block extrajs %} 

    {% endblock %} 
{% endblock %} 

</body> 
</html> 

요청으로, jQuery를이 오류없이 그 자바 스크립트 블록에 포함 된 모든 파일이 먼저로드됩니다.

다음 블록은 jquery 오류가 누락되었지만 스크립트를 계속 실행합니다.

+0

해당 블록은 어디에서 템플릿에 나타 납니까? 더 중요한 것은 어떤 순서로? –

+0

맨 끝 본문 태그 바로 앞에 있고 그 순서입니다. 필요한 첫 번째, 바로 뒤에. 해당 템플릿을 확장하는 템플릿은 requirejs 블록을 무시하지 않고 extrajs 블록 만 –

+0

head 태그에 필요한 js를로드하는 것이 더 좋습니까? –

답변

0

다른 질문과 비슷하게, 나는 내 콘텐츠 블록 안의 여분의 블록을 어리 석음으로 확장하여 모든 주문을 버렸다.