Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

572
Views
Paquete web que usa perf_hooks para el módulo de nodo/navegador

Estoy creando un módulo que me gustaría que estuviera disponible en el navegador y Node. Se basa en el rendimiento, lo que me está dando problemas con Webpack y el módulo perf_hooks en Node. No importa lo que haga, solo puedo conseguirlo donde funcione en uno u otro, pero no en ambos.

A continuación se muestran la mayoría de las cosas que he probado. Mi pregunta es, ¿cómo configuro Webpack para requerir perf_hooks en el nodo, pero uso el rendimiento global integrado cuando estoy en el navegador?

Aquí está mi configuración base de Webpack:

 const path = require('path'); module.exports = { entry: './src/UpdateLoop.js', mode: 'development', output: { library: 'UpdateLoop', libraryTarget: 'umd', path: path.resolve(__dirname, 'dist'), filename: 'updateloop.js', globalObject: 'this', }, };

Código que me está dando problemas:

 const { performance } = require('perf_hooks');

Este error en webpack con:

 Field 'browser' doesn't contain a valid alias configuration resolve as module C:\Users\joe.jankowiak\projects\update-loop\src\node_modules doesn't exist or is not a directory

He visto sugerencias para que 'fs' haga lo siguiente:

 // configuration.node has an unknown property 'perf_hooks' node: { perf_hooks: false, }, // configuration has an unknown property 'browser'. browser: { perf_hooks: false, },

Luego vi a personas que recomendaban usar 'resolver':

 // Compiles, but complains performance doesn't exist in node or browser. resolve: { fallback: { perf_hooks: false, } },
 // Works in browser but doesn't work in node. Node complains about using performance before its defined: performance = performance || require('perf_hooks').performance;
 // Doesn't work in either const performance = performance || require('perf_hooks').performance;
 // Trying to check if its node, but with resolve its making perf_hooks null in node if(typeof __webpack_require__ === 'function') { global.performance = require('perf_hooks').performance; }
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Terminé haciendo esto por pereza porque todavía no entiendo muy bien cómo usar las funciones de NodeJS con Webpack:

 function portableMsecTimer () { if (process.hrtime) { return Number(process.hrtime.bigint()) / 1e6; } else { return window.performance.now(); } }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!