web-dev-qa-db-fra.com

ES6 Proxy Polyfill pour IE11

IE11 n'implémente pas et n'implémentera pas les objets proxy ES2015. Cependant, le soutien étendu d’IE11 est terminé le 14 octobre 2025.

Existe-t-il un moyen de polyfiller des objets proxy pour IE11? Tous les autres navigateurs prennent déjà en charge le proxy.

Si oui, nous pourrions tous l'utiliser aujourd'hui dans la production. Sinon, il faudra attendre près d'une décennie ...

Edit: Je demande spécifiquement à IE11 que je sache IE d'avoir habituellement IE des fonctionnalités spécifiques que je ne connais souvent pas.

Edit2: Je suis particulièrement intéressé par la possibilité de mettre en œuvre un intercepteur fourre-tout. Semblable à __getattr__ en Python. Cela ne doit fonctionner que dans IE11.

27
brillout

Le mieux que vous puissiez obtenir est github: GoogleChrome/proxy-polyfill

Selon Babel docs :

En raison des limitations de ES5, les procurations ne peuvent pas être transpilées ou polyfilled.

11
Dolf Barr

Il y a un assez concis réponse pour cette question sur Quora

Les mandataires ont besoin d'assistance au niveau du moteur et il n'est pas possible de polyfiller Proxy.

La plupart des principaux moteurs JS doivent encore implémenter le support. Découvrez le tableau de compatibilité ECMAScript 6 .

Vous voudrez peut-être utiliser Object.observe à la place, éventuellement avec polyfill pour les navigateurs autres que Chrome, mais même dans ce cas, la proposition a été retirée et il a été annoncé qu'elle serait supprimée de Chrome dans une version future.

Personnellement, je n’ai pas essayé la solution Object.observe, mais c’est peut-être un bon point de départ.

Bonne chance!

4
George