2017-11-13 3 views
0

私はAngularで新しいです。私はこのlinkからチュートリアルに従います、そして、私はそのチュートリアルの一部ではないものを追加/追加しようとしました。 にproviders :[EmployeeService]行を追加し、@componentの中にempployee.component.tsを追加して、TypeError: Cannot read property 'push' of undefinedというエラーを返します。したがって、一部のコンポーネントにproviders :[EmployeeService]を追加する必要はありません。私はこのlinkから依存性注入について読みましたが、私が知りたいと思ったものは実際には得られません。だから誰でも私に簡単な説明をどのように/いつどこで使用する/提供するのか、そのエラーがどのように起こるかを教えてくれますか?Angular Providersの機能と使い方

ありがとうございます。

+2

あなたがリンクしているangular.ioページに詳細が説明されています。それを再度読んでください。 https://angular.io/guide/dependency-injection#when-to-use-ngmodule-versus-an-application-component –

答えて

1

providers array tellsインスタンス化するサービスの角度を指定します。次の2つの場所でそれを定義することができます。あなたがコンポーネントにプロバイダを使用する場合

  1. コンポーネント
  2. モジュール

サービスは、その、それは子供たちのすべてに利用できるようになります。

モジュールで使用すると、指定されたモジュール内のすべてのパイプ、ディレクティブ、コンポーネントおよびサービスに対してサービスを利用できます。

しかし、両方で定義することができます。この場合、Angularは同じサービスの2つのインスタンスを作成します。

最初にモジュールレベルでサービスを提供してください。

関連する問題