From bbfccba1fbd6aeabf2d313f917bfd8942afc7ace Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Tue, 2 Jun 2020 09:49:26 +0800 Subject: [PATCH 1/2] fix: warn on non-existent polyfill names instead of throwing error Fixes #3578 --- packages/@vue/babel-preset-app/index.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/@vue/babel-preset-app/index.js b/packages/@vue/babel-preset-app/index.js index 207b645a4c..e7d8ce5121 100644 --- a/packages/@vue/babel-preset-app/index.js +++ b/packages/@vue/babel-preset-app/index.js @@ -81,7 +81,14 @@ function getPolyfills (targets, includes) { } const compatData = require('core-js-compat').data - return includes.filter(item => isRequired(item, targets, { compatData })) + return includes.filter(item => { + if (!compatData[item]) { + console.warn(`Skipping polyfill ${item} as it's not found in the compatibility table.`) + return false + } + + return isRequired(item, targets, { compatData }) + }) } module.exports = (context, options = {}) => { From bce73d4f3a214760311dc2aff1baaa156f71a2a3 Mon Sep 17 00:00:00 2001 From: Haoqun Jiang Date: Fri, 5 Jun 2020 16:56:20 +0800 Subject: [PATCH 2/2] fix: should throw on unknown polyfill modules, just like the previous behavior and preset-env --- packages/@vue/babel-preset-app/index.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/@vue/babel-preset-app/index.js b/packages/@vue/babel-preset-app/index.js index e7d8ce5121..ab8722f75c 100644 --- a/packages/@vue/babel-preset-app/index.js +++ b/packages/@vue/babel-preset-app/index.js @@ -83,8 +83,7 @@ function getPolyfills (targets, includes) { const compatData = require('core-js-compat').data return includes.filter(item => { if (!compatData[item]) { - console.warn(`Skipping polyfill ${item} as it's not found in the compatibility table.`) - return false + throw new Error(`Cannot find polyfill ${item}, please refer to 'core-js-compat' for a complete list of available modules`) } return isRequired(item, targets, { compatData })