forked from templates/nextjs-template
40 lines
2.2 KiB
Markdown
40 lines
2.2 KiB
Markdown
|
|
---
|
|||
|
|
title: Использование шаблонов генерации
|
|||
|
|
description: Генерация файлов из шаблонов через VS Code плагин и CLI.
|
|||
|
|
keywords: [шаблоны, templates, generate, VS Code, CLI, gromlab/create, npx, scaffold]
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Использование шаблонов генерации
|
|||
|
|
|
|||
|
|
Генерация файлов из шаблонов через VS Code плагин и CLI.
|
|||
|
|
|
|||
|
|
## Через VS Code
|
|||
|
|
|
|||
|
|
Template File Generator | gromlab ([Marketplace](https://marketplace.visualstudio.com/items?itemName=gromlab.vscode-templateFileGenerator), [Open VSX](https://open-vsx.org/extension/gromlab/vscode-templateFileGenerator)) — расширение для генерации файлов и папок из шаблонов через интерфейс редактора.
|
|||
|
|
|
|||
|
|
1. ПКМ на целевой папке в проводнике VS Code.
|
|||
|
|
2. **Generate from template** → выбрать шаблон.
|
|||
|
|
3. Ввести имя (например `button`) — расширение подставит его во все переменные `{{name}}`.
|
|||
|
|
|
|||
|
|
Расширение устанавливается разово на машину разработчика, не через проект.
|
|||
|
|
|
|||
|
|
## Через CLI
|
|||
|
|
|
|||
|
|
[@gromlab/create](https://www.npmjs.com/package/@gromlab/create) — CLI для генерации из тех же шаблонов. Используется через npx, глобальная установка не требуется.
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
npx @gromlab/create <шаблон> <имя> [путь]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Путь не обязателен — по умолчанию генерация происходит в текущую директорию.
|
|||
|
|
|
|||
|
|
| Команда | Что создаёт |
|
|||
|
|
|---|---|
|
|||
|
|
| `npx @gromlab/create component button` | Компонент в текущей папке |
|
|||
|
|
| `npx @gromlab/create module auth src/business` | Бизнес-модуль |
|
|||
|
|
| `npx @gromlab/create widget header src/widgets` | Виджет |
|
|||
|
|
| `npx @gromlab/create layout admin src/layouts` | Layout |
|
|||
|
|
| `npx @gromlab/create store auth src/business/auth/stores` | Стор |
|
|||
|
|
|
|||
|
|
CLI вызывается через `npx`, в `package.json` отдельно не добавляется.
|