私は角2を使い慣れています。私は電子商取引サイトで作業しており、ユーザー、アイテム、入札などの基本クラスを設計しました。多くのパラメータは、それらのいくつかは、次のように角2 - クラス内でサービスを実行
export class User {
id: number;
name: string;
email: string;
...
notifications: Notification[];
}
通知クラスは、2つのパラメータのみを持っています
export class Notification {
notification: string;
read: boolean;
}
私は1つのユーザーのためのサービスと通知のための1つを持っています。
状況は次のとおりです。ユーザーが通知を読むと、データベースの通知の「読み取りフラグ」の値を変更するようにサーバーに要求する必要があります。これを行うには、私のコンポーネントでは、私が行うことができます。
this.notificationService.changeToRead(user.notifications[x]).subscribe(...);
を前の行では、私はnotificationServiceがchangeToReadと呼ばれる方法があるNotificationServiceのインスタンスであることを想像:要求を実行する(通知の通知が)。
これで私の問題は、それが手続きには思わだし、私のような、よりオブジェクト指向のソリューションたいということです、
user.notifications[x].changeToRead();
これを行うには、私はクラスの通知のメソッドchangeToRead()を持っている必要がありますが、クラスにサービスを注入することはできないと思われます...しかし、可能な場合であっても、私はあなたが持っている通知のようなサービスのインスタンスを望んでいません...
私は私の貧しい英語のために明確ですが、私は私の要求をもっとオブジェクト指向にするための解決策を見つける必要があります...
アイデアはありますか?
この 'class'を使用する理由。あなたの答えに感謝して、 '@ Component' – Aravind