我正在尝试创建包含我的角度应用程序之间共享功能的npm软件包。 目前,我可以创建平面npm包,这意味着我的所有类/组件/ etc都可以在主命名空间下使用:
import { Language } from 'my-shared-package';
但是我想这样导入:
import { Language } from 'my-shared-package/models';
我该如何实现?一个npm包下有可能吗?
我的public-api.ts:
export * from './lib/my-shared-package.service';
export * from './lib/my-shared-package.component';
export * from './lib/my-shared-package.module';
export * from './lib/my-shared-package.models';
//编辑 我找到了解决方法。仍然无法像“ my-shared-package / models”那样导入,但是现在我可以像这样导入:
import { Models } from 'my-shared';
export interface IAppState {
language: Models.Language;
}
我的public-api.ts:
import * as _models from './lib/my-shared.models';
// tslint:disable-next-line: no-namespace
export namespace Models {
export import Language = _models.Language;
export import Tag = _models.Tag;
}