#node.js #json #npm #architecture
#node.js #json #npm #архитектура
Вопрос:
Я использую следующий пакет npm с именем arkit для создания диаграмм архитектуры node.js проекты, но я не могу визуализировать пакеты npm (папку зависимостей) в моем node.js архитектура приложения, как показано в примерах Arkit и Vue / Nuxt TodoMVC, я пытался следовать конфигурации json каждого из их соответствующих arkit, но либо они не существуют, как в Vue, либо расплывчаты, как в самом Arkit. Я использовал конфигурацию, указанную в примере конфигурации arkit, но в итоге я получаю все зависимости основных зависимостей, подобные этой. Я попробовал следующую конфигурацию
{ "$schema": "https://arkit.pro/schema.json",
"excludePatterns": ["test/**", "tests/**", "**/*.test.*", "**/*.spec.*"],
"components": [
{ "type": "Dependency",
"patterns": ["node_modules/**/*.js"] },
{ "type": "Component",
"patterns": ["**/*.js", "**/*.jsx"]
}
],
"output": [
{ "path": "arkit.svg",
"groups": [ { "first": true, "components": ["Component"] },
{
"type": "Dependencies",
"components": ["Dependency"]
}
]
}
]
}
но во время генерации архитектуры произошел сбой, я также отправил электронное письмо владельцу этого пакета npm и еще одному человеку, которому успешно удалось это сделать, но они заняты, чтобы помочь мне настроить JSON arkit.
Могу ли я использовать цикл for-of в файле конфигурации JSON, чтобы получить только те node_modules, которые включены в package.json, поскольку я не хочу получать дополнительные зависимые от основных пакетов npm в представлении архитектуры, как показано в ссылке, приведенной выше!
TL;DR Мне нужны диаграммы с подобными зависимостями, но я получаю это, я попробовал, добавив —depth=0 в командной строке «npx arkit —config test.json —depth=0», но безуспешно
Ответ №1:
Я думаю, что arkit ожидает вывода.путь должен быть массивом, но вы передаете ему строку. Попробуйте использовать измененную конфигурацию:
{
"$schema": "https://arkit.pro/schema.json",
"excludePatterns": ["test/**", "tests/**", "**/*.test.*", "**/*.spec.*"],
"components": [{
"type": "Dependency",
"patterns": ["node_modules/*"]
},
{
"type": "Component",
"patterns": ["**/*.js", "**/*.jsx"]
}
],
"output": [{
"path": ["arkit.svg"],
"groups": [{
"first": true,
"components": ["Component"]
},
{
"type": "Dependencies",
"components": ["Dependency"]
}
]
}]
}
Комментарии:
1. Это не работает, я думаю, что требуется некоторая модификация в node_modules / «something»
2. Я также внес это изменение. Забыл упомянуть об этом. Вы использовали конфигурацию, которую я ввел как есть?
3. Да, я использовал конфигурацию как есть, не могли бы вы любезно помочь мне изменить часть node_modules?
4. Не могли бы вы опубликовать ошибку, которую вы получаете? Это может помочь упростить понимание того, что происходит.
5. вы использовали какую-либо глубину в своей командной строке arkit? например, «список npm -depth = 0»
Ответ №2:
В Ubuntu это работает так, как будто есть больше причин ненавидеть Windows 10. Я внедрил конфигурацию package.json для приложения Vue авторов и viola, это сработало как шарм. 2 месяца поиска ответов и пробования всего в Windows, Ubuntu сделал свое дело