1

EDIT: 同じ問題を抱えている他の人のために-クラスの本体でconst Logging: any = require('@google-cloud/logging')一緒に使用するとvar logger = Logging()魅力的でした!

var logger = Logging()を使用して、ロガー ライブラリをインスタンス化することを忘れないでください。そうしないと、logger.log is not a function が表示されます。

元の投稿

タイプスクリプトで書かれたfirebase functionsプロジェクトを持っています-webpackでトランスパイルされました。現在 @google-cloud/logging ライブラリを実装しようとしていますが、問題が発生しています。と言うのが出てきます

モジュール「google-cloud/logging」の宣言ファイルが見つかりませんでした。存在するかどうかを試すnpm install @types/@google-cloud/loggingか、次を含む新しい宣言 (.d.ts) ファイルを追加します。declare module '@google-cloud/logging';

次の方法でライブラリを追加しようとしました。

import * as Logging from '@google-cloud/logging';
import * as logging from '@google-cloud/logging';
import { Logging } from '@google-cloud/logging';

しかし、私はまだこのエラーが発生しています。「ロギング」を使用している関数を実行しようとすると、

logging.log は関数ではありません

ライブラリを要求するJavaScriptの方法も試しましたが、まだ成功していません。

私のtsconfig.json:

{
    "compilerOptions": {
        "target": "es6",
        "module": "commonjs",
        "outDir": "./",
        "noImplicitAny": true
    },
    "include": [
        "src/**/*.ts"
    ],
    "exclude": [
        "node_modules"
    ]
}

「d.ts」ファイルを手動でプロジェクトに追加することで成功した人もいましたが、あまり理解していませんでした。スタックオーバーフローの記事へのリンクは次のとおりです-typescriptでの非typescriptモジュールのインポート

typescript プロジェクトにライブラリを追加するにはどうすればよいですか?

必要に応じて詳細を提供できます。含めて考えられるのはこれでした。

4

1 に答える 1