• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

제로초님

20.03.04 15:45 작성 조회수 156

0

pug에서 

for result in results

  

    script.

    

      positions.push({

        lat: #{result.geometry.location.lat}, // 위도 

        lng: #{result.geometry.location.lng}, // 경도

        name: '#{result.name}',

        id: '#{result.place_id}'

      });

쓰는 문법을 ejs 문법으로 바꾸려면 어떻게 해야 하나요?!

답변 5

·

답변을 작성해보세요.

0

ejs에서는 for in 문이 아니라 for of 문 쓰셔야 합니다. 자바스크립트도 마찬가지입니다. 배열에서는 for of문입니다.

0

김로인님의 프로필

김로인

질문자

2020.03.04

제로초님 라우터를 저렇게 같이 json형식으로 만들어서 같이 뿌려 봤는데 

왜 ejs에서는 index만 결과 값이 나오는거죠...ㅠ.ㅠ

백엔드에서 response를 console.log 로 response.json.results 찍어 봤을때 는 데이터 값이 잘 나오는데 프론트로 넘겼을때 안나오더라구 여 ㅠㅠ

for in 문에서 그냥 for문으로 변경 하니 되던데 for in문을 제가 잘 못 쓴건가요?

0

for문이 script 밖에 있으니까 바깥에 넣으셔야죠. positions.push는 감쌀 필요 없습니다.

0

김로인님의 프로필

김로인

질문자

2020.03.04

<script type="text/javascript">

var positions = [];

<% for (result in results) { %>

<% positions.push({ %>

lat: <%=result.geometry.location.lat %>

<% }) %>

<% } %>

</script>

이런식으로 사용 하고 있는데 안되더라구여 ... ㅠㅠ

0

for 부분과 #{ 부분을 모두 <% for과 <%=로 바꾸시면 됩니다.