web-dev-qa-db-ja.com

モジュールインポートによる名前の衝突Angular 2-それを防ぐ方法はありますか

PrimeNGにすでに存在する共通名Messageのクラスを作成したため、名前の衝突がほぼ発生しました。

import {Message} from "primeng/primeng";
import {Message} from "./dto";

これは私のコードなので、クラスの名前を他の名前(MessageDTOなど)に変更するだけで済みます。しかし、これが外部クラスの場合、問題が発生します。

エイリアスを使用してクラスをインポートする方法、または名前の競合に対処する他の手段はありますか? I Javaインポートの代わりに完全修飾名を使用してクラスを参照できます。これは見苦しいですが、避けられないことがよくあります。Angular 2/TypeScript ?

13
9ilsdx 9rvj 0lo

TypeScriptimport document に従って、インポートの名前も以下のように変更できます。

import { Message } from "primeng/primeng";
import { Message as MessageDTO } from "./dto";
35
ranakrunal9