질문을 삭제하지 말아주세요.!
 
1
0
-1

처음 개발할 때는 blade.php 안에 포함된 js 스크립트인데, 비슷한 페이지를 여럿 만들 필요가 생겨서 중복되는 js 코드를 파일 하나로 묶어서 @section('js') @parent @stop 와 같은 방식으로 쓰려고 했습니다. 그런데 결과가 상상하던 것과는 다르더군요. blade 문법으로 적용된 부분이 다 깨져서 변수가 안 나오고 {{ trans('aaa.bbbb') }} 라는 텍스트가 그대로 출력됩니다. 해결하기 위해 무엇을 포함해야 하나요?

    CommentAdd your comment...

    1 answer

    1.  
      1
      0
      -1

      {{ }} 로 출력시 XSS 공격을 방어하기 위해 htmlspecialchars가 적용되기 때문입니다.

      자바스크립트를 이스케이프하지 않고 출력하려면 {{ }} 대신 {!! !!}로 출력하시면 됩니다.

      1. Centell

        이런 ㅠ  아래와 같이 그대로 출력이 됩니다.

        {!! trans('room.sunday') !!}
      2. 이현석

        상황이 제대로 파악이 안되네요. 블레이드 파일 내용을 올려주시면 답변 드리는데 더 도움이 될 것 같습니다.

      CommentAdd your comment...