2017-10-31 6 views
-2

javascript 파일에서 twig 변수를 사용하고 있습니다. 내 목표는 미리 정의 된 문자열을 사용하여 변수의 속성에 액세스하는 것입니다. 기본적으로,이 작업을 수행 할 수 :Twig에서 변수의 속성에 액세스

var a = 'data-foo'; 
console.log({{ attribute(foo, a) }}); 

불행히도, 이것은 내가 직접 console.log({{ attribute(foo, 'data-foo') }});를 사용하는 경우, 그것은 작동, 내 데이터를 어떻게해야합니까 작동하지 않습니다.

특수한 목적으로는 첫 번째 아이디어를 적용해야합니다. 내가 좋아하는 다른 일을 시도했다 :

console.log("{{attribute(foo, "+a+")}}"); 
console.log({{foo[a]}}); 
console.log({{ "foo."+a }}); 

그러나이 중 어느 것도, 자바 스크립트가 결과를 찾을 수 없습니다 작동하지 않습니다와 나는 콘솔에서 빈 답변을 얻을.

+0

나뭇 가지가 서버 측 렌더링됩니다. 당신은 ajax와 함께 데이터를 가져와야합니다 – DarkBee

+1

나뭇 가지가 PHP입니다, 당신은 PHP로 자바 스크립트를 전달할 수 없습니다. – goto

답변

2

JavaScript 변수를 Twig 함수에 전달하려고합니다. 이것은 직접 가능하지 않습니다.

{% set a = 'data-foo' %} 
var a = '{{ a }}'; 
console.log({{ attribute(foo, a) }}); 

여기서 변수 a은 나뭇 가지와 자바 스크립트에서 사용할 수 있습니다.