Я начинаю использовать angular-cli и уже много читал, чтобы найти ответ о том, что я хочу сделать ... безуспешно, поэтому я пришел сюда.
Есть ли способ создать компонент для нового модуля?
например: ng g module newModule
ng g component newComponent
(как добавить этот компонент в newModule ??)
потому что поведение по умолчанию angular-cli заключается в размещении всех новых компонентов внутри app.module
. Я хотел бы выбрать, где будет находиться мой компонент, чтобы я мог создавать отдельные модули и не иметь внутри всех своих компонентов app.module
. Это можно сделать с помощью angular-cli или я должен сделать это вручную?
источник
ng g component moduleName/componentName
.--module
опцией, как:ng g component <your component> --module=<your module name>
источник
--dry-run
к концу этого, просто чтобы посмотреть, что будет затронуто, это хорошая проверка здравомыслияng g component path/to/myComponent --module=app.module.ts --dry-run
очень полезная команда; просто чтобы убедиться, что ваш компонент создан в правильном каталоге.Не уверен, что, возможно, ответ Александра Цесельского был верным на момент написания, но я могу убедиться, что это больше не работает. Неважно, из какого каталога в проекте вы запускаете Angular CLI. Если вы печатаете
он сгенерирует компонент и импортирует его в файл app.module.ts
Единственный способ использовать CLI для автоматического импорта в другой модуль - это указать
где moduleName - это модуль, который вы уже определили в своем проекте. Если moduleName не существует, он поместит компонент в каталог moduleName / newComponent, но все равно импортирует его в app.module.
источник
ng g module newModule
2.ng g component new-module/newComponent
по его словам должен быть новый модуль вместо newModulemkdir
папка, а затем запустил нг компонента newComponent внутри вновь созданной папки.ng g component moduleName/newComponent -m moduleName
ng generate module {modComName}
1) создал папку 2) создал файл модуля внутри папки с тем же именем; командаng generate component {modComName}
фактически 1) Создает файл компонента в папке с тем же именем 2) Изменен модуль для импорта компонентаng
добавляет импорт в конец массива; но вы можете захотеть: «Порядок маршрутов в конфигурации имеет значение, и это сделано специально».Я не нашел ответа, который показал бы, как использовать cli для генерации компонента в папке модуля верхнего уровня, а также чтобы компонент автоматически добавил коллекцию объявлений модуля.
Для создания модуля запустите это:
Чтобы создать компонент в папке модуля foo и добавить его в коллекцию объявлений foo.module.ts, выполните следующее:
И Cli вырежет модуль и компонент следующим образом:
- EDIT новой версии углового кли ведет себя по-разному. 1.5.5 не хочет имя файла модуля, поэтому команда с v1.5.5 должна быть
источник
--module
аргумента; что документы говорят «Позволяет спецификацию объявляющего модуля.» ; Я хотел бы добавить,--module
указывает, какой существующий модуль должен быть изменен, чтобы импортировать модуль, который вы собираетесь создатьВы можете попробовать ниже команду, которая описывает,
Тогда ваша команда будет выглядеть так:
источник
Для Angular v4 и выше просто используйте:
источник
Specified module does not exist
тогда как модуль существовалuser-settings.module.ts
и вы хотите добавить компонент,public-info
то команда будет:ng g c PublicInfo -m user-settings
вот что сработало для меня:
Если вы хотите создать компонент без его каталога, используйте
--flat
флаг.источник
это сгенерирует модуль с именем
media
внутриmodules
папки.первая часть команды
ng g c modules/media/picPick
сгенерирует папку компонентов, которая называетсяpicPick
внутриmodules/media
папки, в которой находится наш новыйmedia
модуль.вторая часть сделает наш новый
picPick
компонент объявленным вmedia
модуле, импортировав его в файл модуля и добавив его вdeclarations
массив этого модуля.источник
Перейти на уровень модуля / мы также можем быть в корневом уровне и введите ниже команды
Пример :
источник
Первый модуль генерации:
Это создаст папку moduleName, затем перейдите к папке модуля
И после этого сгенерировать компонент:
Используйте --flat, чтобы не создавать дочернюю папку внутри папки модуля
источник
У меня есть похожие проблемы с несколькими модулями в приложении. Компонент может быть создан для любого модуля, поэтому перед созданием компонента мы должны указать имя конкретного модуля.
источник
Используйте эту простую команду:
users
: Название вашего модуля.userlist
: Имя вашего компонента.источник
Согласно Angular Docs способ создать компонент для конкретного модуля,
"имя каталога" = где CLI сгенерировал функциональный модуль
Пример :-
В результате создается папка для нового компонента в папке на панели пользователя и обновляется функциональный модуль с помощью CustomerDashboardComponent.
источник
Первый запуск
ng g module newModule
. Тогда бегиng g component newModule/newModule --flat
источник
Я создал компонентный дочерний модуль с определенной корневой папкой
Эта команда ниже я указал, пожалуйста, проверьте
Ремонт - это корневая папка нашего дочернего модуля
источник
Я столкнулся с этой проблемой сегодня во время работы над приложением Angular 9. Я получаю сообщение «ошибка модуля не существует» всякий раз, когда я добавляю
.module.ts
или.module
к имени модуля. Кли нужно только имя модуля без расширения. Предполагая, что у меня есть имя модуля:,brands.module.ts
команда, которую я использовал, былаудалите, как
--dry-run
только вы подтвердили правильность структуры файла.источник
пример:
источник
Распространенным шаблоном является создание объекта с маршрутом, отложенным модулем и компонентом.
Маршрут:
myapp.com/feature
приложение-routing.module.ts
Структура файла:
Все это может быть сделано в кли с:
Или короче
Или, если вы не укажете имя, cli спросит вас об этом. Очень полезно, когда вам нужно создать несколько функций
источник
Добавьте компонент в приложение Angular 4 с помощью Angular CLI
Чтобы добавить новый компонент Angular 4 в приложение, используйте команду
ng g component componentName
. После выполнения этой команды Angular CLI добавляет папкуcomponent-name
вsrc\app
. Также ссылки того же самого добавляются вsrc\app\app.module.ts
файл автоматически.Компонент должен иметь функцию
@Component
декоратора, заclass
которой следуетexport
редактор. Функция@Component
декоратора принимает метаданные.Добавьте компонент в определенную папку приложения Angular 4 с помощью Angular CLI
Чтобы добавить новый компонент в определенную папку, используйте команду
ng g component folderName/componentName
источник
Если у вас есть несколько приложений, объявленных в .angular-cli.json (например, в случае работы с функциональным модулем)
Ты можешь :
-a означает --app (имя)
источник
Я использую эту конкретную команду для генерации компонентов внутри модуля.
Эта команда сгенерирует компонент, локальный для модуля. или Вы можете сначала изменить каталог, набрав.
а затем создать компонент.
Примечание: код, заключенный в <>, представляет специфичные для пользователя имена.
источник
1.- Создайте свой функциональный модуль как обычно.
2.- Вы можете указать ПУТЬ КОРНЯ вашего проекта в --module (только в корнях --module, (/) указывает на корень вашего ПРОЕКТА, а НЕ СИСТЕМНЫЙ КОРЕНЬ !!! )
Реальный пример:
Вывод:
Протестировано с Angular CLI: 9.1.4
источник
Сделать модуль, сервис и компонент в конкретном модуле
источник