在创建标准vue应用程序(使用vue-cli v3.0)并包含@feathersjs/feathers
以实现与Feathers API的连接时,Internet Explorer 11(SCRIPT1010: Expected identifier
出现错误)
最重要的是找到一种解决此类问题的简便方法,因为在较大的项目中,很容易发现很多库问题,并且有时必须支持至少一个版本的Internet Explorer(至少从业务角度而言)的观点)
我在Feathers网站(https://docs.feathersjs.com/api/client.html#module-loaders)上看到该库使用ES6,因此在这种情况下必须对其进行编译才能在IE11这样的浏览器中工作。
所以我尝试了这个,但是一点都没有运气:
// vue.config.js
module.exports = {
baseUrl: '/',
transpileDependencies: [
'@feathers/commons',
'@feathers/errors',
'@feathers/feathers',
'debug'
]
}
甚至在Chrome中也出现错误:Uncaught ReferenceError: exports is not defined
我创建了一个项目来显示此错误:https://github.com/riescorp/vue-internet-explorer
即使它不能快速运行或看起来不错,但是可以工作,一个人也应该能够使用IE11。
答案 0 :(得分:0)
我认为该过程应与Vuetify网站上该页面上标题为“ IE11&Safari 9 support”(滚动到底部)的部分中的指示相同:({滚动至底部):https://vuetifyjs.com/en/getting-started/quick-start
我还记得我在项目中不需要做的其他事情。
答案 1 :(得分:0)
我终于设法解决了这个问题。
这是完成窍门的babel.config.js
配置:
module.exports = {
presets: ['@vue/app'],
plugins: ['@babel/transform-modules-commonjs']
}
我的vue.config.js
中也有一个错字,它应该像这样:
// vue.config.js
module.exports = {
baseUrl: '/',
transpileDependencies: [
'@feathersjs',
'debug'
]
}
最后,当使用羽毛时,此行不起作用:
.configure(restClient.fetch(window.fetch))
因此您可以使用import 'whatwg-fetch'
来解决它(记住要安装npm i whatwg-fetch
)