>  Q&A  >  본문

내장된 템플릿에서 상위 블록 확장

레이아웃의 스타일 및 스크립트 블록 내부가 아닌 임베디드 블록에서 새로운 값을 삽입하고 싶습니다. 물론 오류가 발생합니다 在块之外调用“parent”是禁止的.. 해결책이 있나요?

layout.html.twig:

으아악

list.html.twig:

으아악

datatable.html.twig:

으아악

(scriptsstyles 内的 list.html.twig 块。它们是数据表模板的一部分,在 list.html.twig를 사용할 수 없습니다/사용하지 않습니다.) 안타깝게도 이 함수는 동적 속성을 지원하지 않고 문자열만 지원하기 때문에 use를 사용할 수 없습니다.

문서에서:

use 문은 템플릿에 전달된 컨텍스트와 독립적으로 구문 분석되므로 템플릿 참조는 표현식이 될 수 없습니다.

P粉033429162P粉033429162278일 전466

모든 응답(1)나는 대답할 것이다

  • P粉333395496

    P粉3333954962023-12-21 11:48:45

    댓글에서 언급했듯이 포함/포함은 포함자의 블록을 변경할 수 없습니다. 즉, 문제를 해결할 수 있는 확장 프로그램이 있습니다.

    延迟的Twig扩展여기

    에서 확인할 수 있습니다.

    기본적으로 노드는 해당 블록의 실행을 지연시킵니다. 이렇게 하면 모든 자바스크립트 링크를 보유하고 출력하는 변수를 만들 수 있습니다. 이는 github의 Advanced예제에서 확인할 수 있습니다.

    이 확장 프로그램을 만들어 주신 Eugene Leonovich에게 감사드립니다

    회신하다
    0
  • 취소회신하다