Как Docusaurus определяет порядок заголовков на боковой панели?

В моем проекте Docusaurus я создал новую боковую панель в sidebars.json и добавил несколько файлов, и она хорошо отображается, за исключением того, что она не упорядочена так, как я заказал ее в файле json.

Моя новая боковая панель представляет собой список дат и файлов, связанных с этими датами. Поэтому я подумал, может быть, это из-за того, что категории являются числами. Поэтому я попытался переименовать их во что-то вроде «Текущий год», но это не сработало. Я также пытался переставить их в файле Json, но это тоже не сработало.

"WhatsNew": {
    "2019": ["Current Month", "January 2019"], 
    "2018": ["December 2018", "November 2018", "October 2018", "September 
             2018", "August 2018", "July 2018", "June 2018", "May 2018", 
             "April 2018", "March 2018", "February 2018", "January 2018"],
    "2017": ["December 2017"]
  }, 

Я ожидаю, что боковая навигация будет упорядочена так, как у меня в файле json, но вместо этого она упорядочена противоположно тому, как она упорядочена в файле json. Вместо того, чтобы начинать с 2019 года, он начинается с 2017 года.


1
245
1

Ответ:

Решено

Боюсь, сейчас это никак не исправить. Это связано с тем, что ключи в JavaScript не имеют фиксированного порядка, и Docusaurus должен решить эту проблему в версии 2.

Один очень уродливый лайфхак, который я могу вам предложить, это добавить пробел перед вашими ключами как таковой:

"WhatsNew": {
  " 2019": ["Current Month", "January 2019"], 
  " 2018": ["December 2018", "November 2018", "October 2018", "September 
         2018", "August 2018", "July 2018", "June 2018", "May 2018", 
         "April 2018", "March 2018", "February 2018", "January 2018"],
  " 2017": ["December 2017"]
},

и они будут отображаться в том порядке, в котором вы это определили. Надеюсь, места не видно.