如果浏览器是 Internet Explorer 11,如何防止在 App.js 中导入

How can I prevent an import in App.js if browser is Internet Explorer 11

我正在为一个项目使用 Vue.js,不出所料,IE11 中存在问题。我缩小了这个问题的范围,这似乎是 plugin/component 的问题,我正在使用名为“lottie-vuejs”。

在 IE11 中我得到一个错误:SCRIPT1009: Expected '}'

当我单击错误以查看它的来源时,我可以在已编译的 app.js 文件中看到一个方法:

loadJsonData: async function loadJsonData(path) {
      return await axios__WEBPACK_IMPORTED_MODULE_1___default.a.get("/" + path).then(function (response) {
        return response.data;
      });
    }

我尝试了 promise-polyfill 但没有成功,如果我从 app.js 中删除 lottie-vuejs 的导入,Internet Explorer 11 只会呈现我的网站。

如果检测到浏览器是 Internet Explorer 11,有什么方法可以防止导入它?

我尝试将导入包装在 IF 语句中并将其评估为 false 作为测试),但我得到了编译时我的终端出现错误:

我在app.js中的尝试:

if(1 + 1 == 3){
    import LottieAnimation from 'lottie-vuejs' // import lottie-vuejs
    Vue.use(LottieAnimation); // add lottie-animation to your global scope
} 

出现错误:

'import' and 'export' may only appear at the top level

如果对解决方案有帮助,我正在使用 Vue.JS 和 Laravel。

作为我的问题的解决方法,我使用了一个更旧且更稳定的不同软件包:https://www.npmjs.com/package/vue-lottie-ssr

我使用的软件包构建不正确。这现在可以在 IE11 中按预期运行,但不会出现预期的样式问题。