vue-cli-service: SyntaxError: Unexpected token '...'。需要一个属性名称

Posted

技术标签:

【中文标题】vue-cli-service: SyntaxError: Unexpected token \'...\'。需要一个属性名称【英文标题】:vue-cli-service: SyntaxError: Unexpected token '...'. Expected a property namevue-cli-service: SyntaxError: Unexpected token '...'。需要一个属性名称 【发布时间】:2019-12-13 12:48:15 【问题描述】:

我正在使用 vue 组合一个小应用程序,我特别需要它在不支持 ES6 的设备上运行。我正在使用 vue-cli-service build 构建,当尝试在我的 ES5 设备上打开此页面时,我看到此错误 SyntaxError: Unexpected token '...'. Expected a property name.

我已经安装了 babel,并将它添加到我的 .babelrc: "presets": ["@babel/preset-env"]

我不太确定还能尝试什么,我找不到任何专门解决此问题的方法。甚至 vue-cli-service 文档也提出了支持 ES5 的 polyfill 的方法,但我认为这不是一回事。

【问题讨论】:

【参考方案1】:

我在使用 Vuetify 和 Safari 11.1 时遇到了这个问题

我猜我需要为旧版浏览器转译 Vuetify 的 ES6 版本。该解决方案很难搜索,因为大多数建议都是关于修改 webpack 或 babel 配置,而我发现这些在 Vue CLI 中被掩盖了。

我最终通过 Vue CLI 从头开始​​重建我的项目,自己发现了解决方案,安装程序神奇地为 Vuetify 添加了一个我缺少的转换选项 - 我想是因为我之前升级了 Vuetify ES5 到 ES6 版本,也许他们的升级脚本没有执行这一步。

vue.config.js

module.exports = 
 "transpileDependencies": [
   "vuetify"
 ],

这相当于 webpack

build: 
    transpile: ['vuetify']

重新启动构建并重新加载。

当然,您需要找到它是您的哪个包 - 这只是一个示例。我只是在错误堆栈中挖掘,直到找到属于 Vuetify 的东西。

【讨论】:

你先生是救生员!如此烦人的过程希望我没有开始使用 vue cli UI 将不得不重做所有事情,你只是为我节省了大量时间.. 谢谢

以上是关于vue-cli-service: SyntaxError: Unexpected token '...'。需要一个属性名称的主要内容,如果未能解决你的问题,请参考以下文章

vue-cli-service 使用的入口文件是哪个?

vue-cli-service: SyntaxError: Unexpected token '...'。需要一个属性名称

如何在 HTTP-2 上使用 Vue-CLI-service 服务?

Vue.js:如何防止 `vue-cli-service --modern` 构建遗留​​包?

如何解决“vue-cli-service”不被识别为内部或外部命令?

如何修复 vue-cli-service 漏洞?