2017-06-26 12 views
2

window.consoleグローバルにオブジェクトを追加したいと思います。TypeScriptのコンソールインターフェイスを拡張する

import Reactotron from 'reactotron-react-native'; 

window.console.tron = Reactotron; 

私は活字体は、新しいオブジェクトを訴え、それを行うときものの:

エラーTS2339:プロパティ「トロンは、」タイプ「コンソール」に存在しません。

私はコンソールインターフェース拡張することを考えていた:私は私のグローバルなコンソールオブジェクトにこの新しいインターフェイスを割り当てするかどうかはわかりません、が

interface ConsoleWithTron extends Console { 
    tron: any 
}; 

を?

ヘルプは素晴らしいでしょう!

ありがとうございました。

+0

なぜコンソールが大文字になっていますか? – evolutionxbox

答えて

5

Consoleインターフェイス自体を増やすことができます。 merging interfacesを参照してください:

interface Console { 
    tron: any 
} 

あなたはモジュール内部からConsoleを強化したい場合は、declare global { }ブロック内でそれをラップする必要があります。 global augmentation

declare global { 
    interface Console { 
     tron: any 
    } 
} 
+0

私はまだ 'tsc'から同じエラーを受けています。コンソールオブジェクトに' tron'を追加する前にインタフェースを定義しました。 – alexmngn

+2

これをモジュール内に追加していますか?それを 'declare global {}'の中に入れなければならないかもしれません。 [global augmentation](https://www.typescriptlang.org/docs/handbook/declaration-merging.html#global-augmentation)を参照してください。 – Saravana

関連する問題