[解決済み] node.jsでTypeScript Globalオブジェクトを拡張する
2023-06-15 15:20:06
質問
node.jsのアプリで、ある設定情報を
global
オブジェクトに設定情報を付加します。
global.myConfig = {
a: 1,
b: 2
}
TypeScriptコンパイラは、この
Global
という名前のオブジェクトがないためです。
myConfig
:
TS2339: プロパティ 'myConfig' はタイプ 'Global' に存在しません。
こんなの嫌だ。
global['myConfig'] = { ... }
を拡張するにはどうすればよいのでしょうか?
Global
を含むように
myConfig
それともTypeScriptに黙って私を信じろと言うのか?私は前者を選びます。
の中の宣言を変えたくない。
node.d.ts
. 私はこれを見ました
SOポスト
を見て、これを試してみました。
declare module NodeJS {
interface Global {
myConfig: any
}
}
を拡張する方法として、既存の
Global
インターフェイスを拡張する方法ですが、何の効果もないようです。
どのように解決するのですか?
このSOの投稿を見て、これを試してみました。
のようなものがあるのではないでしょうか。
vendor.d.ts
:
// some import
// AND/OR some export
declare module NodeJS {
interface Global {
spotConfig: any
}
}
あなたのファイルは
クリーン
ルートレベルの
import
または
exports
. そうすると、このファイルは
モジュール
から切り離され
グローバル型宣言の名前空間
.
もっと詳しく: https://basarat.gitbooks.io/typescript/content/docs/project/modules.html
関連
-
webpack ENOENTソリューションの起動
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.jsで終了する方法
-
[解決済み] Node.jsでファイルを書き込む
-
[解決済み] Node.jsアプリケーションをデバッグするにはどうすればよいですか?
-
[解決済み] グローバルGit無視
-
[解決済み] JSONオブジェクトをTypeScriptのクラスにキャストする方法を教えてください。
-
[解決済み] TypeScriptのオブジェクトリテラルでの型定義
-
[解決済み】TypeScriptのインターフェースと型について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】モジュール '@babel/core' が見つかりません。
-
webpack ENOENTソリューションの起動
-
[解決済み】E11000重複キーエラー mongodb mongooseのインデックス
-
[解決済み】npm 5で作成されたpackage-lock.jsonファイルはコミットするのでしょうか?
-
[解決済み] AWS s3 api error: specified bucket does not exist.
-
[解決済み] E: npm パッケージを見つけることができません。
-
[解決済み] http-server コマンドが見つかりません。
-
[解決済み] ノードマータ予期せぬフィールド
-
[解決済み] TypeScriptでグローバル変数を作成する
-
[解決済み] グローバルスコープの拡張は、外部モジュールまたはアンビエントモジュール宣言にのみ直接ネストすることができます(2669)