問題タブ [angular-event-emitter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - EventEmitter と CustomEvent の問題
Angular 8.3.14 プロジェクト。
親コンポーネントと文字列を共有するための EventEmitter を作成しました。
子コンポーネント
親コンポーネント HTML
親コンポーネント TS
問題は、サンプル関数で CustomEvent オブジェクトを受け取っていることです。そのオブジェクトには現在の値を持つプロパティがありますが、なぜ文字列ではなく CustomEvent を受け取るのでしょうか? これは私たちが見たことのないものです。
サンプル関数で受け取った CustomEvent オブジェクト
javascript - コンポーネント間通信のためのイベント エミッターとサービスを使用した角度での非同期呼び出し
subscribe メソッドから受け取った値をテンプレート変数に格納することはできません。
写真詳細コンポーネント
外部のconsole.logはundefinedになり、ビューには何もレンダリングされませんが、subscibeメソッドの内部では値を見ることができます。どうすればビューに表示できますか?
写真コンポーネント
テンプレート ビューでのサブスクライブと非同期呼び出しから受け取った値を保存して表示できるように、これがどのように機能し、どのように回避するかを説明してください。
これが 2 つのコンポーネントのビューです---
photo.component.html
写真詳細.component.ts
photo.service.ts
これは私のgithubリポジトリへのリンクです。コードをコメントに残し、そこで別のアプローチを使用しました。そこのアルバムコンポーネントを確認すると、httpリクエストにサブスクライブし、アルバムコンポーネントのテンプレート変数に値を割り当てました。また、値は subscibe メソッドの外側で未定義として表示されますが、テンプレートでアクセスできます。
https://github.com/Arpan619Banerjee/angular-accelerate
アルバム コンポーネントとサービスの詳細は次のとおりです。 これをイベント エミッタのケースと比較して、違いを説明してください -- albums.component.ts
アルバム.コンポーネント.html
アルバム.サービス.ts
コメントで説明されているように、偶数エミッターにコンソール ログを追加しましたが、これは予想される動作です。
angular - Angular 8:ダイアログを閉じずにダイアログデータと親データの両方を更新した後、更新された親データをマットダイアログに渡すにはどうすればよいですか?
ダイアログを閉じずにダイアログ データと親データの両方を更新した後、更新された親データを Mat ダイアログに渡すにはどうすればよいですか? とはありますevent emitter
か?
ダイアログを閉じたくありません。データを渡すにはmat closed
関数を使用できましたが、ダイアログを閉じたくありません。ダイアログを閉じずに両方のデータを更新したいだけです。基本的には、親データの更新後にダイアログデータを更新します。