남아있는 머리카락을 절약하는 데 도움을 주셔서 감사합니다. node.js + express + mongoDB + EJS를 사용하여 기본 CRUD 응용 프로그램을 빌드하고 있습니다. EJS는 끔찍한 기록을 가지고있어서 우리에게 초보자가 그것을 배우기가 정말 어렵다고 말하고 싶습니다. 여기 제가 가지고있는 문제가 있습니다.EJS 정렬 필터가 작동하지 않습니다.
"vehicles"라는 객체가 있는데 폼 선택 요소에 표시하고 있습니다. 여기 내 EJS가 있습니다 :
<% vehicles.forEach(function(el){ %>
<option value="<%= el.vehicleModel %>"><%= el.vehicleModel %></option>
<% }); %>
문제는 MongoDB가 전달한 객체에서 픽업 되었기 때문에 정렬되지 않았습니다. 나는 인터넷 검색을했고 this nice tutorial을 찾았다. EJS는이 문제를 해결하기위한 필터를 가지고 있습니다. 그래서 나는 다음과 같은 코드를 시도 :
<% vehicles.forEach(function(el){ %>
<option value="<%=: el.vehicleModel | sort %>"><%=: el.vehicleModel | sort %></option>
<% }); %>
를하지만 나에게 다음과 같은 오류가 발생합니다 :
개체 프로토 타입은 객체가 될 수는 null
그래서 뭔가 내 코드 잘못 생각했다. 다른 필터 (downcase)를 사용하여 다음과 같이 사용했습니다.
<% vehicles.forEach(function(el){ %>
<option value="<%=: el.vehicleModel | downcase %>"><%=: el.vehicleModel | downcase %></option>
<% }); %>
그리고 작동합니다. 문자는 소문자입니다. 그러면 정렬 필터가 작동하지 않는 이유는 무엇입니까?
P/S : 내 다른 모발 간다 ..
이 질문은 해결되었지만 필터가 더 이상 사용되지 않으므로 사용을 중단해야합니다. –