javascript - internet - angular-polyfills
webpack 2 no funciona en IE11? (1)
Tengo un proyecto javascript muy básico que usa el paquete web (^ 2.6.0) como un paquete de módulos. Hay una dependencia como módulo de proveedor, y tengo un punto de entrada. Mi configuración es la siguiente:
const path = require(''path'');
const webpack = require(''webpack'');
module.exports = {
entry: {
bundle: ''./modules/main.js'',
vendor: [''react'']
},
output: {
path: path.join(__dirname, ''build''),
filename: ''[name].js'',
chunkFilename: ''[id].js''
},
plugins: [
new webpack.optimize.CommonsChunkPlugin({
name: "vendor"
})
]
};
Esto crea los paquetes bundle.js
y vendor.js
. El bundle de proveedor también contiene el código de bootstrap de webpack, que se carga ANTES de cargar cualquiera de mis módulos. Ahora, la inspección de ese código de arranque revela que en la línea 40, el paquete web generado
/******/ var resolvedPromise = new Promise(function(resolve) { resolve(); });
Desafortunadamente, Promise no está disponible en IE11, e incluso si incluye un polyfill que incluye Promise (con, por ejemplo, import ''babel-polyfill''
) como lo primero en el punto de entrada, o incluso como su propio punto de entrada, nunca lo obtendrá ejecutado antes de que se ejecute el código de arranque, lo que significa que no puedo usar este código en IE11 a menos que incluya un Promise-polyfill manualmente antes de mis paquetes de webpack. Como era de esperar, IE11 arroja un error Promise is not defined
antes incluso de llegar a cualquiera de mi código o incluso al paquete del proveedor.
¿Me estoy perdiendo algo aquí o es este el comportamiento esperado? No puedo encontrar nada en los documentos de la carpeta web para contrarrestar este problema.
Esto parece ser un problema introducido con el paquete web 2.6.0, ya se ha emitido un error: https://github.com/webpack/webpack/issues/4916