【发布时间】:2017-04-19 07:52:37
【问题描述】:
我有一个 Angular 2 服务,意思是一些组件正在使用的打字稿类,它通过 http 从 Web 服务获取数据。 ng 服务使用 Angular 的 http、rxjs Observables 和 observable 操作符。 我需要在一个完全不同的应用程序中重新使用这个 ng 服务,它是 vanilla JS(没有角度,没有打字稿)。
是否可以只编译 ng 服务及其依赖项(http、rxjs)并将其打包成一个独立的、自给自足的 JavaScript 模块,可以在浏览器中使用?
【问题讨论】:
-
我看不出它可能不起作用的任何原因
-
我该怎么做?我是否只是获取 service.ts 文件的 JS 输出并尝试在 Angular 上下文之外使用它?这肯定行不通,因为它依赖于 Angular 的东西,问题是我需要什么其他的 Angular 东西,以及是否有一种简单的方法来打包它
-
如果您使用模块,您已经通过检查导入知道您需要什么。你的服务使用依赖注入吗?
-
是的。我只注入@angular/http,但也使用其他模块,如rxjs,以及一些模型类。我知道我的服务依赖于什么,但我不知道如何在没有 Angular 应用程序的其余部分(并且不需要 Angular 作为依赖项)的情况下引导 just 我的服务
-
如何引导我的服务 - 你是什么意思引导?此外,如果您的其他应用程序没有实现它,您可以使用 DI。您可以导入
@angular/http并在类中自己实例化它
标签: angular typescript