ejs 템플릿에서 반복을 시도하는 객체 배열이 있지만 "참조 오류 : 청구서가 정의되지 않았습니다."라는 메시지가 계속 나타납니다.EJS 변수가 제대로 렌더링 되더라도 오류가 발생합니다.
다른 StackOverflow의 질문은 변수가 실제로 정의되었는지 여부를 테스트했다, 그래서 나는이 제대로 배열의 길이를 렌더링,하지만 여전히
ReferenceError: /index.ejs:11
9| <div id="billCarousel" class="carousel slide" data-ride="carousel">
10| <!--Indicators-->
>> 11| <h1><%= bills.length %></h1>
에서 오류가 발생합니다
<h1><%= bills.length %></h1>
을 사용 나는 그런
<%= (typeof bills === 'undefined') ? "ERROR" : bills[0].TrackNum %>
은 F의 TRACKNUM와 함께이 라인을 교체하는 경우
irst 객체가 제대로 렌더링되었지만 오류는
ReferenceError: index.ejs:13
11| <ol class="carousel-indicators">
12| <%= (typeof bills === 'undefined') ? "ERROR" : bills[0].TrackNum %>
>> 13| <% for (var i=0; i < bills.length; i++) {%>
으로 이동합니다. 아래 관련 코드를 모두 볼 수 있습니다.
페이지/index.ejs
<ol class="carousel-indicators">
<h1><%= (typeof bills == 'undefined') ? "ERROR" : bills[0].TrackNum %></h1>
<% for (var i=0; i < bills.length; i++) {%>
<li data-target="#billCarousel" data-slide-to="<%= i %>" class="<%= (i == 0) ? 'active':'' %>"></li>
<% } %>
</ol>
server.js
app.get('/', function(request, response) {
billQuery.summary(function(data) {
console.log(data.bills);
response.render('pages/index', {
page: "index",
status: data.status,
message: data.message,
bills: data.bills
});
})
});
CONSOLE.LOG (data.bills)를 적절히 콘솔 어레이를 출력한다. 나는 index.ejs에서 렌더링 상태와 메시지를 시도해 보았고 정상적으로 작동합니다. 이미 Express Engine을 EJS로 설정했습니다. index.ejs를 렌더링하기 전에 Expressway 엔진을
app.set('view engine', 'ejs');
으로 설정했습니다. 또한 서버를 다시 시작하고 브라우저의 캐시를 여러 번 지웠으나 오류가 계속 발생합니다. 내가 놓친 다른 것이 있습니까?