在多个Ionic 3应用程序之间共享应用程序组件:一种务实的方法

务实的 -\ prag-ˈma-tik \ 与事实或实际事务相关的,通常排除了智力或艺术事务:实际而非理想主义 在这种情况下,务实的做法会让人有点胆怯,但与我发现的其他解决方案相比,它确实可行,而且设置起来也容易得多。 如果您是要在一组Ionic 3应用程序之间共享的组件的开发人员,并且希望每个应用程序都可以访问所有这些组件,但是您不准备或不愿意编写自己的TypeScript模块包括在每个项目中,这种方法可能对您有用。 要正确使用说明,请跳至下面的“分步说明”。 我是一位经验丰富的后端和Web开发人员,但绝不是Angular或Ionic的专家—几个月前,我开始了我的第一个Ionic应用程序,这也是我有史以来的第一个Angular应用程序。 因此,我可以肯定的是,我可以向经验丰富的开发人员学习很多东西。 对于那些正在阅读本文的人:告诉我您认为我应该知道或了解的所有信息! 对于Ionic 3应用程序,您正在为项目A编写一些功能,您也想在项目B中使用它,但是您想要将该组件的文件保存在一个位置,因此不必保留复制粘贴代码或合并来自多个版本的编辑。 另外,您想保持编辑器的代码完成功能正常工作,并且希望在共享组件中进行的编辑仍然可以自动重新构建开发应用程序,因此您不必在编码时做任何额外的事情,这仅仅是因为您碰巧正在共享组件中工作。 听起来很合理-但做起来很难,令人惊讶。 您不能像在PHP中那样简单地编写一个文件并从两个位置包含它,或者像在JavaScript中那样编写一个简单的模块并在npm中包含它。 可以将项目文件夹外部的文件重用于开发构建,但是随后执行build…

扩展Angular HttpClient

Angular在Angular v4.3中引入了HttpClient服务。 我最近用Angular开始了一个新项目,因此我想使用HttpClient服务而不是Http服务。 正如每个开发人员都应该做的那样,我做了一些研究,研究网络上的人们如何使用它,说实话,我感到有些惊讶。 作为一项基本功能,我正在HttpClient中寻找可以定义后端位置的东西,因此不需要在每个请求中都定义它。 网络上的很多人(例如StackOverflow,Medium和几个博客)都在编写拦截器,以对其进行定义。 对于那些不知道什么是Angular拦截器的人,我在开头提到的版本(v4.3)中添加了功能。 它们就像从Angular生态系统创建的每个请求的中间件。 在解释了什么拦截器之后,让我们回到定义服务器位置。 让我们实现一个拦截器,该拦截器将为应用程序发出的每个请求添加服务器位置。 如您所见,我们仅更改请求的URL参数。 但是,如果我们必须为请求添加不同的位置会怎样? 显然,我们需要添加if语句或更多,以便拦截器添加我们要到达的目的地的正确位置。 我认为这是一个有点尴尬的实现,不是吗? 如果我们尝试扩展HttpClient怎么办? 有两种方法可以做到这一点,但在此示例中,我将使用最快的一种方法。 因此,在这种类型的实现中,我们可以定义API的默认位置,如果需要使用原始的HttpClient服务,则可以通过公共http属性访问它。 但是在结束本主题之前,我们还需要添加一件事,以便Angular可以理解并使用它。…