Как извлечь данные JSON из шаблона Mustache при использовании Webpack? - PullRequest
0 голосов
/ 08 мая 2020

Я работаю над проектом, который использует html -webpack-plugin. Я работаю над созданием большой навигационной структуры с данными stati c (пока нет системы управления контентом), и вместо того, чтобы вручную запускать множество повторяющихся HTML, я хотел бы l oop через JSON объект.

У меня работает код, при условии, что я передаю JSON прямо в строку, которая включает частичное. Я хотел бы абстрагировать JSON в другой файл, чтобы HTML был чище, но я изо всех сил пытаюсь это сделать.

Работает

проблема в том, что мой объект данных состоит из пары сотен строк:

${require('mustache-loader!html-loader?interpolate&minimize=true&root=.!./sub-nav.html')({ 
  "nav": [
    { "column": "sub-nav-data-1" },
    { "column": "sub-nav-data-2" },
    { "column": "sub-nav-data-3" },
   ]
})}

Не работает

Хотя я действительно не ожидал, что это сработает, это мое лучшее предположение, и оно все равно не работает:

<script type="text/javascript">
const data = { 
  "nav": [
    { "column": "sub-nav-data-1" },
    { "column": "sub-nav-data-2" },
    { "column": "sub-nav-data-3" },
   ]
}
</script>

${require('mustache-loader!html-loader?interpolate&minimize=true&root=.!./sub-nav.html')( data )}

Эта абстракция работает (выводит все, что я определил как «привет» в файле JSON), но я не уверен, как это сделать oop через данные:

<h1>${require('../../../../../js/data.json').hello}</h1>
...