Javascript 脚本1003:预期为';:';在IE~Vue.js~MDBootstrap上
我有一个简单的Vue.js应用程序,它可以在IE以外的浏览器上完美运行,它显示一个空白页面,错误为Javascript 脚本1003:预期为';:';在IE~Vue.js~MDBootstrap上,javascript,vue.js,webpack,babeljs,mdbootstrap,Javascript,Vue.js,Webpack,Babeljs,Mdbootstrap,我有一个简单的Vue.js应用程序,它可以在IE以外的浏览器上完美运行,它显示一个空白页面,错误为SCRIPT1003:Expected':'。我添加了一个vue.config.js文件,该文件如下所示: module.exports = { transpileDependencies: ["bootstrap-css-only", "mdbvue"] }; module.exports = { presets: [["@vue/app", { useBuiltIns: "entry"
SCRIPT1003:Expected':'
。我添加了一个vue.config.js
文件,该文件如下所示:
module.exports = {
transpileDependencies: ["bootstrap-css-only", "mdbvue"]
};
module.exports = {
presets: [["@vue/app", { useBuiltIns: "entry" }]]
};
我的.babelrc
文件是从正式项目中获取的默认文件,它是:
{
"presets": [
[
"env",
{
"modules": false,
"targets": {
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
}
}
],
"stage-2"
],
"plugins": ["transform-vue-jsx", "transform-runtime"]
}
及
两者都没有改变任何东西,错误和行为都是一样的。我唯一想到的解决这个问题的方法是,在export default
中,我对组件使用了以下语法:
components: {
mdbContainer,
mdbRow,
mdbCol,
mdbCard,
mdbCardBody,
mdbInput,
mdbBtn,
mdbIcon,
mdbModalFooter,
mdbView
}
Edit2:但是如果我删除这行,那么MDBootstrap中的所有UI元素都将消失。还有其他的使用方法吗?我只想使用多边形填充
我试图创建babel.config.js
文件,但也没有帮助。此文件中的逻辑如下所示:
module.exports = {
transpileDependencies: ["bootstrap-css-only", "mdbvue"]
};
module.exports = {
presets: [["@vue/app", { useBuiltIns: "entry" }]]
};
我有什么遗漏吗?我所理解的vue.config.js
文件不必在任何地方导入,因为。以下是我的问题:
babel.config.js
和.babelrc
还是只使用其中一种vue.config.js
那样自动检测到babel.config.js
文件$ vue --version
3.11.0
问题是IE11不支持速记属性表示法,但您在
组件列表中使用了速记属性表示法。您的.babelrc
未设置为确保生成的代码可以在IE11上运行
您可能希望通过查看来微调浏览器
设置,但例如,向其中添加IE11
将确保传输的代码具有在IE11上运行所需的所有转换
请注意,IE11基本上不支持ES2015+中的任何内容。(它有const
和let
的损坏版本,但基本上就是这样。)这样做将有效地将所有代码传输到ES5级别。您可能希望为IE和其他更现代的浏览器提供不同的捆绑包。我也有类似的问题。我使用vue cli 4
重新创建了项目,并保留了所有默认值。我没有在我的main.js
中引用babel
或core js
。我查看了IE中的控制台错误,以了解是哪个库导致了脚本错误(让我们称之为someimportedlib
)。然后我在vue.config.js
中添加了该库,如下所示
transpileDependencies:['some-imported-lib']
我试图从浏览器中更改列表的元素,即“不是ie@DanielDanielecki-不是针对这个特定的问题,不是,尽管我总是建议包括
并关闭intranet模式。@DanielDanielecki-你确定要将传输的结果发送到浏览器而不是未传输的版本吗?因为用浏览器列表传输速记。@t.j-crowder我想速记是很常见的事情,所以它会被传输。我只是在运行npm run dev
并在本地主机上检查它。这种方法有什么问题吗?对于Vue.js来说,这是一个全新的概念,来自一个角度分明的世界——以防万一,如果这真的是一个基本问题的话。我已经有了meta标签,我在想可能还有其他的东西。只要尝试任何方法。谢谢,它解决了问题!基本上,只需升级到Vue CLI 4(had 3)即可!MDBootstrap也在12天前升级到了最新的CLI,显然这个问题已经不存在了(=)PS.vue.config.js
。