エラーが発生しますReferenceError: performance is not defined
関数呼び出しの実行時間を測定するために performance.now() を使用する場合:
export async function find(someId: string, ctx: context.IContext) {
try {
var t0 = performance.now();
var res = someModel.find(someId, ctx.cookies);
var t1 = performance.now();
console.log("Call to find took " + (t1 - t0) + " milliseconds.");
return res;
} catch (err) {
console.error(err);
throw err;
}
}
これを修正する方法はありますか?
私はこれがフロントエンドにタグ付けされていることを知っていますが、node.jsソリューションを探している人に遭遇した場合(私のように)、まずperf_hooksモジュールのパフォーマンスを要求する必要があります(ノード8.5以降で利用可能) 。
const {performance} = require('perf_hooks');
const t0 = performance.now();
...
「perf_hook」モジュールは複数の構成体(オブジェクト、関数、定数など)をエクスポートするため、使用する構成体を明示的に指定する必要があります。この場合、performance
構文が必要です。宣言は次の2つの方法で行うことができます。
const performance = require('perf_hooks').performance;
または
const { performance } = require('perf_hooks'); //object destructuring