Size: a a a

Angular - русскоговорящее сообщество

2019 October 02

AE

Argument Exception in Angular - русскоговорящее сообщество
Crypto Team Ⓜ️
Ребята, подскажите: у меня в модулях реги и логина юзается одни и те же импорты материал дизайна (форма, поля и тд). Я не хочу подключать в каждом модуле реги и логина импорты материала. По этому я создал общий модуль, назвал его auth, в котором вынес импорты материала. Однако, ничего не работает, пишет, что не найдены материал элементы. Хотя вызываю в файле реги или логина сам модуль auth через импорт
в общем модуле еще добавьте exports
источник

CT

Crypto Team Ⓜ️ in Angular - русскоговорящее сообщество
И добавить туда файлы реги и логина?
источник

CT

Crypto Team Ⓜ️ in Angular - русскоговорящее сообщество
Спасибо 👍
источник

S

Smooth Operator in Angular - русскоговорящее сообщество
Alex H
можно минутку негодования) во тв ангуляре есть лезимодули, только вот почему они не работают с библиотеками которые идут из коробки, и приходиться модуль wrapper для этого🙄
можно пример?
источник

AH

Alex H in Angular - русскоговорящее сообщество
Smooth Operator
можно пример?
создаем либу
ng generate library my-lib

добовляем роутер с лези модулем

{
   path: 'my-lib',
   loadChildren: () => import('my-lib').then(m => m.MyLibModule)
 },

пытаемся собрать в прод режиме и получаем ошибку что не может найти ngfactory

но если создаешь модуль в проекте с таким содержанием
import { NgModule } from '@angular/core';
import {MyLibModule} from 'my-lib';

@NgModule({
 declarations: [],
 imports: [
   MyLibModule
 ]
})
export class MyLibModuleWrapperModule { }
и меняешь роутер
  {
   path: 'my-lib',
   loadChildren: () => import('./my-lib-wrapper/my-lib-wrapper.module').then(m => m.MyLibWrapperModule)
 },

то все ок
источник

CT

Crypto Team Ⓜ️ in Angular - русскоговорящее сообщество
Argument Exception
в общем модуле еще добавьте exports
Добавил, но теперь ругается на то, что цикличность появляется. Я в файле регистрации импорт делаю общего модуля. Дальше прописываю в ngModule import путь этого же общего модуля.

В общем модуле пишу импорт регистрации. И пишу в ngModule в exports - путь к регистрации
источник

AB

Arthur Bobrovskih in Angular - русскоговорящее сообщество
Alex H
создаем либу
ng generate library my-lib

добовляем роутер с лези модулем

{
   path: 'my-lib',
   loadChildren: () => import('my-lib').then(m => m.MyLibModule)
 },

пытаемся собрать в прод режиме и получаем ошибку что не может найти ngfactory

но если создаешь модуль в проекте с таким содержанием
import { NgModule } from '@angular/core';
import {MyLibModule} from 'my-lib';

@NgModule({
 declarations: [],
 imports: [
   MyLibModule
 ]
})
export class MyLibModuleWrapperModule { }
и меняешь роутер
  {
   path: 'my-lib',
   loadChildren: () => import('./my-lib-wrapper/my-lib-wrapper.module').then(m => m.MyLibWrapperModule)
 },

то все ок
import('my-lib') что экспортирует ?
попробуйте указать здесь точный путь до файла только с модулем MyLibModule
возможно проблема в том что 'my-lib' экспортирует кроме MyLibModule еще MyLibRoutingModule
источник

AE

Argument Exception in Angular - русскоговорящее сообщество
Crypto Team Ⓜ️
Добавил, но теперь ругается на то, что цикличность появляется. Я в файле регистрации импорт делаю общего модуля. Дальше прописываю в ngModule import путь этого же общего модуля.

В общем модуле пишу импорт регистрации. И пишу в ngModule в exports - путь к регистрации
в общем модуле, в exports прописываете всё то что в imports, т.е material модули
источник

CT

Crypto Team Ⓜ️ in Angular - русскоговорящее сообщество
Argument Exception
в общем модуле, в exports прописываете всё то что в imports, т.е material модули
Работает, спасибо
источник

AH

Alex H in Angular - русскоговорящее сообщество
Arthur Bobrovskih
import('my-lib') что экспортирует ?
попробуйте указать здесь точный путь до файла только с модулем MyLibModule
возможно проблема в том что 'my-lib' экспортирует кроме MyLibModule еще MyLibRoutingModule
так это  либа, которая в дев режиме работает через тсконфиг, а прод режиме должна подгружаться из нод модулей
источник

AH

Alex H in Angular - русскоговорящее сообщество
експортов нет не каких
источник

AB

Arthur Bobrovskih in Angular - русскоговорящее сообщество
Alex H
так это  либа, которая в дев режиме работает через тсконфиг, а прод режиме должна подгружаться из нод модулей
попробуйте так
import('my-lib/module').then(m => m.MyLibModule)


module.ts
export class MyLibModule { }
источник

S

Smooth Operator in Angular - русскоговорящее сообщество
Alex H
создаем либу
ng generate library my-lib

добовляем роутер с лези модулем

{
   path: 'my-lib',
   loadChildren: () => import('my-lib').then(m => m.MyLibModule)
 },

пытаемся собрать в прод режиме и получаем ошибку что не может найти ngfactory

но если создаешь модуль в проекте с таким содержанием
import { NgModule } from '@angular/core';
import {MyLibModule} from 'my-lib';

@NgModule({
 declarations: [],
 imports: [
   MyLibModule
 ]
})
export class MyLibModuleWrapperModule { }
и меняешь роутер
  {
   path: 'my-lib',
   loadChildren: () => import('./my-lib-wrapper/my-lib-wrapper.module').then(m => m.MyLibWrapperModule)
 },

то все ок
а какя у вас версия ангуляра?
источник

AH

Alex H in Angular - русскоговорящее сообщество
Smooth Operator
а какя у вас версия ангуляра?
8.2.5
источник

AH

Alex H in Angular - русскоговорящее сообщество
Arthur Bobrovskih
попробуйте так
import('my-lib/module').then(m => m.MyLibModule)


module.ts
export class MyLibModule { }
так когда запускешь build my-lib собирает несколько файлов, и main фаил это umd модуль.
источник

S

Smooth Operator in Angular - русскоговорящее сообщество
Alex H
8.2.5
cli тоже?
источник

AH

Alex H in Angular - русскоговорящее сообщество
угу
источник

AH

Alex H in Angular - русскоговорящее сообщество
cli даже 8.3.3)
источник

S

Smooth Operator in Angular - русскоговорящее сообщество
источник

AH

Alex H in Angular - русскоговорящее сообщество
хммм....ща попробую запдейтить, может что-то пошло не так после апдейта🙄
источник