2017-10-23 8 views
0

내 사이트는 여러 페이지를 기반으로합니다. 각각은 내가 페이지에서 네비게이션 바을 구축하고 갖고 싶어hexo/ejs에서 메뉴 항목을 정렬 할 수 없습니다.

--- 
menutitle: "Mediator" 
menuorder: 2 
lang: "en" 
--- 

같은 서문을 가지고

<% site.pages 
    .filter(p => p.lang == "en") 
    .sort((i1, i2) => i1.menuorder - i2.menuorder) 
    .forEach(function(item, idx) { %> 
     <%- partial('menu_item', {data: {class: 'colour' + idx, title: item.menutitle, link: item.path}}) %> 
<% }) %> 

내 문제 메뉴 순서 정렬이 발생하지 및 메뉴 항목이 무엇인지에 끝날 것입니다 그들이 마지막으로 저장된 순서 인 것처럼 보입니다! 정렬 순서는 어떻게 되나요?

답변

0

site.pages는 배열이 아니라 객체라고 생각합니다. 따라서 정렬하거나 반복하려는 페이지 콘텐츠의 배열을 구성하거나 위에 템플릿 site.pages 대신 site.pages.data을 사용하십시오.