打字稿和学习angular2的新手。我可以创建一个应用程序并在浏览器中显示它,但我认为最好通过导入库并在主应用程序中使用它来开发应用程序。
有没有办法在角度上制作可重复使用的库?我似乎无法找到任何帮助。
例如,给定以下应用程序结构,如果我希望删除共享目录资产并将其放在 shared-lib 中,我该如何实现?我在package.json等中放置了什么?
├── admin
│ ├── home-dashboard.component.ts
│ ├── home-dashboard.component.html
│ ├── home-dashboard.component.css
│ ├── home-dashboard.component.spec.ts
│ ├── login.component.ts
│ ├── login.component.spec.ts
│ ├── admin.model.ts
│ ├── user-management.service.ts
│ └── order-management.service.ts
├── shared
│ ├── components
│ │ ├── avatar.component.ts
│ │ ├── avatar.component.html
│ │ ├── login-form.component.ts
│ │ ├── login-form.component.html
│ │ ├── login-form.component.css
│ │ └── login-form.component.spec.ts
│ ├── directives
│ │ ├── form-validator.directive.ts
│ │ ├── form-validator.directive.spec.ts
│ │ ├── tooltip.directive.ts
│ │ └── tooltip.directive.spec.ts
│ └── services
│ └── authorization.service.ts
├── pipes
│ ├── format-order-name.pipe.ts
│ └── format-order-name.pipe.spec.ts
└── shop
├── components
│ ├── edit-profile.component.ts
│ ├── edit-profile.component.html
│ ├── edit-profile.component.css
│ ├── edit-profile.component.spec.ts
│ ├── home.component.ts
│ ├── home.component.spec.ts
│ ├── home.component.html
│ ├── register.component.ts
│ └── register.component.spec.ts
├── models
│ ├── shopping-cart.model.ts
│ ├── shopping-item.model.ts
│ └── user.model.ts
└── services
└── checkout.service.ts
由于
答案 0 :(得分:0)
如果您要在package.json中添加内容,那么您必须将其设为npm package
(这将是npm install' d)。您可能还需要将其设为私有npm包。 (这不是免费的)
我认为您正在寻找的是能够让它成为自己的import
?
如:
import { Avatar, Tooltip } from 'shared-lib';
如果您只是将所有内容都包装在导出所有内容的大型模块中(并且仍在某个项目结构中)
您可以执行以下操作:
import { Avatar, Tooltip } from '../../shared-lib'; // or wherever the large index.js module is found.
index.js 模块需要将所需的所有特定组件/指令/ etc导入其中,然后单独导出它们。瞧,您可以通过{ Avatar }
访问它们。