vue-cli-service:语法错误:意外的标记“...”。需要一个属性名称

问题描述 投票:0回答:2

我正在使用 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 的方法,但我认为这不是同一回事。

vue.js npm vue-cli
2个回答
5
投票

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

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

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

vue.config.js

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

这相当于 webpack

build: {
    transpile: ['vuetify']
}

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

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


0
投票

我已将节点版本从 v14.17.3 更新到 v21.6.2,如快速入门指南中所示

先决条件如下

  • 安装 Node.js 版本 18.0 或更高版本

如果您想从 CLI 更新节点,请参阅: https://stackoverflow.com/a/8191466/23469300

希望这也适合您。

© www.soinside.com 2019 - 2024. All rights reserved.