gpt4 book ai didi

javascript - 很少有 Angular 服务,仅在常量上有所不同

转载 作者:行者123 更新时间:2023-12-02 16:16:42 25 4
gpt4 key购买 nike

我对 angularjs 还很陌生,我需要执行以下操作:我有几个部分 View ,每个 View 都包含简单的配置表单,需要将其获取/放入服务器。

每个 View 都有一个 Controller ,每个 Controller 都有一个相应的服务,负责向给定的后端端点执行 GET/PUT 请求。

服务目前仅在端点 URL 上有所不同。

问题是:您将如何避免以下情况?

var providerConfigService = function ($http) {


this.fetchConfig = function (endpointUrl, success, failure) {
$http.get(endpointUrl)
.success(function (data) {
success(data)
})
.error(function (data, status) {
failure(status)
});
};


this.updateConfig = function (endpointUrl, config, success, failure) {
$http.put(endpointUrl, config)
.success(function (data, status) {
success()
})
.error(function (data, status) {
failure(status)
});

}
};

var facebookConfigService = function (providerConfigService) {
var facebookEndpoint = "";

this.fetchConfig = function (success, failure) {
providerConfigService.fetchConfig(facebookEndpoint, success, failure)
};

this.updateConfig = function (config, success, failure) {
providerConfigService.fetchConfig(facebookEndpoint, config, success, failure)
};

};

// POTENTIALLY DUPLICATED CODE FOR OTHER VIEWS
// SERVICE REGISTERING

我更像是一个 Java 人,所以我会在 Java 和 Spring 世界中做这样的事情:

提供 endpointUrl 作为构造函数参数,然后创建一个 Factory 类或仅声明预配置的 bean。

我正在 Angular 世界中寻找类似的解决方案。我应该使用 Angular 的工厂/提供商吗?如果是这样,怎么做?这可能很简单,但我对 Angular 的服务/ Controller /工厂/提供者很困惑。

最佳答案

通常在 Angular 世界中,您会尝试使用 ng-resource 。如果您的 API 是 RESTful 且基本的,我会推荐 ng-resource。如果没有,那么您所做的一切都可以,但通常这些获取和放置将仅在提供服务本身内进行。你只是把成功和失败都写干了,但现实是,无论如何,这些都可能会有所不同。

关于javascript - 很少有 Angular 服务,仅在常量上有所不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29500275/

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