Добавить свойство к объекту в l oop с Loda sh в Express - PullRequest
0 голосов
/ 14 января 2020

Мне нужно добавить свойство id, преобразованное в кебаб-кейс, к объекту, проанализированному из файла JSON:

Приложение. js

    app.get('/factions', (req, res) => {
      const rawData = fs.readFileSync(__dirname + '/views/data/factions.json');
      var factions = JSON.parse(rawData);

      for (var key in factions) {
          factions.key["id"] = _.kebabCase(key);
      }

      console.log(factions);

    res.render('pages/factions', {
        factionList: factions
      });
    });

Этот способ не работает, если я пытаюсь factions["Faction One"]["id"] = _.kebabCase(key);, я вижу, что "id" : "faction-one" добавлено к Faction One. Но если я использую значение ключа не.

JSON

{
  "Faction One": {
    "color": "blue"
  },
  "Faction Two": {
    "color": "red"
  }
}

1 Ответ

0 голосов
/ 14 января 2020

Решено с

for (var key in factions) {

 factions[key].id = _.kebabCase(key);

}
...