Angular4を使用すると、私はさまざまなデータベース用のサービスを作成しました。プログラムに型をサービスに渡す最も良い方法は何ですか?
私はデータベースごとにサービスを作成していましたが、管理するためのより良い方法が必要であると考えています(これはCRUDと似ていますが)この。
インポート中またはコンポーネント内でサービスに「名前」を渡して、サービスがどのエンドポイントにヒットするのかを知る方法はありますか?
例:
import {ApiService} from '../_services/api.service.ts';
とサービスで:endpoint
がフィールドとして定義され、url
が読み取り専用アクセサをすることを
let endpoint = enter code here defined from import of component
private url = '/api/' + endpoint
確かにこれは良い考えではありません。いくつかの行を保存するためにコードを脆く、読みにくくしています – bryan60
どのように脆くなるのかを拡張できますか? 6つの150回線サービスまたは1つのサービスを6回延長する方が良いでしょうか? – kisonay
6 150回線サービス。これを実現するには、すべての消費者が本質的にエラーが起こりやすい単一のサービススタイルに従うようにする必要があります。さらに、基礎となる単一サービスの変更により、アプリケーション全体が中断されて大規模なリストラが行われる可能性があります。脆くなる。角度のあるスタイルのガイドはDRYを推奨しますが、DRYは推奨しません。これはあまりにも乾燥しています。 Angularは、主要なCRUD操作をカプセル化しているHTTPクライアントを既に公開しています。それ以上に一般的である必要はありません。 – bryan60