gpt4 book ai didi

angular - Angular 5中如何设计常用方法

转载 作者:可可西里 更新时间:2023-11-01 16:24:54 27 4
gpt4 key购买 nike

正在开发我的第一个 Angular 应用。

我的所有服务都将与同一台服务器上的 Web 服务通信。我希望每个服务都使用通用代码来执行此通信,以允许服务在业务逻辑上进行通信。例如,我想对服务器名称进行一次编码。

我在其他平台上这样做的方法是创建一个带有这些方法的静态类,然后从我的服务中调用这些方法。我如何使用 Angular 5 实现这一点,因为我只知道模板、组件和服务?

最佳答案

一种非常常见的方法是创建一个名为 config.ts 的文件,其中包含一个存储您可能需要的任何属性的对象 APP_CONFIG。然后您可以简单地导入配置对象并使用所需的属性。

更新

您还可以使用@Inject 装饰器将字符串和对象注入(inject)到服务中(您也必须先提供它们):

您的服务:

@Injectable()
export class DataService {
constructor(@Inject(API_BASE_URL) baseUrl?: string) { // ... }
}

你的 appConfig.module.ts:

import {NgModule} from '@angular/core';
import {API_BASE_URL} from 'some/path';

@NgModule({
providers: [
{
provide: API_BASE_URL,
useValue: 'https://example.com'
}
]
})

export class AppConfigModule {
}

这样您就可以使用 DI 模拟此依赖项以进行测试。

关于angular - Angular 5中如何设计常用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48756208/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com