如何在angular2

时间:2016-03-13 05:47:30

标签: angular typescript1.8

打字稿和学习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

由于

1 个答案:

答案 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 }访问它们。