Vue.js 如果浏览器为Internet Explorer 11,如何防止在App.js中导入
我将Vue.js用于一个项目,毫不奇怪IE11中存在问题。我缩小了问题的范围,我使用的名为“lottie vuejs”的插件/组件似乎有问题 在IE11中,我得到一个错误:SCRIPT1009:预期为“}” 当我单击错误以查看其来源时,我可以在编译的app.js文件中看到一个方法:Vue.js 如果浏览器为Internet Explorer 11,如何防止在App.js中导入,vue.js,internet-explorer-11,polyfills,lottie,Vue.js,Internet Explorer 11,Polyfills,Lottie,我将Vue.js用于一个项目,毫不奇怪IE11中存在问题。我缩小了问题的范围,我使用的名为“lottie vuejs”的插件/组件似乎有问题 在IE11中,我得到一个错误:SCRIPT1009:预期为“}” 当我单击错误以查看其来源时,我可以在编译的app.js文件中看到一个方法: loadJsonData: async function loadJsonData(path) { return await axios__WEBPACK_IMPORTED_MODULE_1___defa
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
出现错误:
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对解决方案有帮助的话,我将使用它们。作为我的问题的解决方法,我使用了一个更旧、更稳定的不同软件包:
我使用的软件包没有正确构建。这在IE11中可以正常工作,没有预期的样式问题。此包没有正确构建。我建议试着降低它的等级,或者使用一些不那么麻烦的东西。似乎很好。好的,谢谢,我将尝试使用你提到的一个代替-你知道这在IE11中是否有效吗?我不能保证,但我希望如此。lottie vuejs的问题是它没有被传输,因此ES2017代码在任何过时的浏览器中都无法工作,这在第三方软件包中并不常见。@不幸的是,对于完全相同的错误消息,该代码也不能工作。我无法阻止它从app.js加载到IE11中吗?你完全可以在IE中工作。这在很大程度上取决于你的设置。是vue cli项目吗?您需要确保所有模块都已编译。看见你需要在那里列出这个模块。还要确保Babel被配置为编译到ES5而不是更高版本。