Mon projet est entièrement écrit en module CommonJS et je ne peux pas le changer. J'essaie d'utiliser une bibliothèque qui est un module ESM. La bibliothèque est la bibliothèque Got (https://github.com/sindresorhus/got).
Voici mon code
const request = require('request');
const Promise = require('bluebird');
// require('./wrapped-got');
var wrappedgot = null;
function HTTPRequestV2(hostURL, defaultOptions) {
this.hostUrl = hostURL;
this.requestWrapper = request.defaults(defaultOptions);
}
HTTPRequestV2.prototype.init = async function(){
wrappedgot = await import('got');
/*return import('got')
.then(({default: theDefault}) => {
wrappedgot= theDefault;
console.log(theDefault);
});
console.log(wrappedgot);*/
};
Mais lorsque je lance cela, j'obtiens une erreur Non supporté sur la ligne wrappedgot = await import('got');
J'ai essayé d'utiliser le contournement de la fonction d'importation dynamique comme suggéré dans leur page des problèmes mais elle échoue avec l'erreur ci-dessus https://github.com/sindresorhus/got/issues/1789
J'ai même essayé d'exécuter leur code d'exemple mais cela échoue également avec la même erreur https://gist.github.com/szmarczak/0f2b70b2a1ed52a56a6d391ac02d094d
------Mise à jour-------
J'utilise la version Node 12.14.1, elle prend en charge async/await. J'ai lu sur SO où il a été utilisé dans la version Node 10
Utilisation de la fonction d'importation dynamique() sur Node.js
La version de la bibliothèque Got est 13.0.0