問題タブ [angular-compiler]

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.

0 投票する
0 に答える
163 参照

angular - Angular: カスタム typescript デコレーターを解析する

Typescript デコレータを使用して、Angular プロジェクトのバックエンド サービス/モデル パラメータからフロントエンド クラス パラメータへのマッピングを定義したいと考えています。バックエンドを変更できず、フロントエンド コードに名前を使用したくありません。

私の typescript モデル定義の例:

バックエンドから受信したデータは次のようになります。

ここで、これらすべての@Paramデコレータを分析し、マッピングを含む JSON ファイルを生成するコンパイラ フックを作成します。

後で、私のサービスはこのマッピング ファイルを使用してバックエンド レスポンスを解析します。

バックエンドの "世界" (Java、PHP など) では、これは注釈の非常に典型的な使用法です。つまり、注釈は、データベース テーブル/Web サービスとエンティティ クラスの間のマッピングを定義するために上記のように使用されます。

Angularでこれを達成するにはどうすればよいですか? 私の目標は、マッピング JSON ファイルがコンパイラの呼び出し時に自動的に生成されることです。ある種のコンパイラ フックを定義できますか? 例やすぐに使える解決策はありますか (同様の要件を持つ他のものがあると想像できます)。