Angular 角模中的共享类
我希望有一个共享模块类,我可以导入到其他模块。大概是这样的:Angular 角模中的共享类,angular,module,Angular,Module,我希望有一个共享模块类,我可以导入到其他模块。大概是这样的: import { SomeClass } from '/path/to/shared/module' 我希望避免像这样直接导入类 import { SomeClass } from '/path/to/class' 基本上,我想要从Java中的包或从c#中的命名空间进行导入。我只能从共享模块中找到使用组件、服务或指令,但没有类。我知道我可以使用桶文件,但这似乎是更好的解决方案,适合我的需要它的模式与使用组件、服务、指令等相同 为整
import { SomeClass } from '/path/to/shared/module'
我希望避免像这样直接导入类
import { SomeClass } from '/path/to/class'
基本上,我想要从Java中的包或从c#中的命名空间进行导入。我只能从共享模块中找到使用组件、服务或指令,但没有类。我知道我可以使用桶文件,但这似乎是更好的解决方案,适合我的需要它的模式与使用组件、服务、指令等相同 为整个应用程序中的任何共享类找到一个好的家 您的共享类:
export class SomeClass {
...
}
要使用共享类的任何位置:
import { SomeClass } './path/to/shared/class';
请看一些有关MDN的示例:
然而,如果你想让这个超级“角度化”,你可能想看看使用一个它与使用一个组件、服务、指令等的模式是一样的 为整个应用程序中的任何共享类找到一个好的家 您的共享类:
export class SomeClass {
...
}
要使用共享类的任何位置:
import { SomeClass } './path/to/shared/class';
请看一些有关MDN的示例:
但是,如果您试图使这个超级“成角化”,您可能需要考虑使用路径别名 文件夹结构:
src
└── shared
├── module1
│ ├── index.ts
│ └── module1.module.ts
└── module2
├── index.ts
└── module2.module.ts
src/shared/module1/index.ts
export * from './module1.module.ts'
src/shared/module2/index.ts
export * from './module2.module.ts'
在tsconfig.json中添加别名:
{
"compilerOptions": {
...
"paths": {
"@shared/*": ["src/app/shared/*"],
}
}
}
这就是你如何使用它:
import { Module1 } from '@shared/module1';
使用路径别名 文件夹结构:
src
└── shared
├── module1
│ ├── index.ts
│ └── module1.module.ts
└── module2
├── index.ts
└── module2.module.ts
src/shared/module1/index.ts
export * from './module1.module.ts'
src/shared/module2/index.ts
export * from './module2.module.ts'
在tsconfig.json中添加别名:
{
"compilerOptions": {
...
"paths": {
"@shared/*": ["src/app/shared/*"],
}
}
}
这就是你如何使用它:
import { Module1 } from '@shared/module1';
这回答了你的问题吗?这回答了你的问题吗?