最近在接手一个vue-cli3搭建的app项目的新需求时, 发现自己拉下代码之后启动一直报错,

报错是 unexpected token... 

对应的报错文件是  项目\ node_modules\ read-pkg\index.js , 具体是里面有一个...options  的运算操作报错,导致项目起不起来

后面捣鼓一圈, 走了点弯路, 还是把问题解决了, 问题的解决过程如下:

 

尝试一:

最开始的时候 看到... 运算符不能解析, 以为是babel没有配置好, 自己捣鼓了一圈配置, 结果发现怎么配置都依然启动报同样的错, 后面一问,其他人项目启动都没有问题,大家都是拉的一样的代码,看来不是babel配置问题;

 

尝试二:

后面看了一下vue.config.js 的配置, 配置里面有一个选项是transpileDependencies, 官网上的解释是这样的:

默认情况下 babel-loader 会忽略所有 node_modules 中的文件。如果你想要通过 Babel 显式转译一个依赖,可以在这个选项中列出来, 鉴于 现在的报错是因为node_modules里面的 read-pkg 文件夹里面index.js 文件可能无法转码成功, 所以在vue.config.js 的文件里面将transpileDependencies  这一项的值配置成了 [ node_modules/read-pkg], 但是配置完成之后还是报错

 

尝试三:

目前推测的两种可能都没有解决问题, 后面去网上搜了一圈, 发现其他人也有类似经历, 遇见报错' Unexpected token { '

然后git  issues 上面给出的解决方案是 npm 和node.js版本过低, 需要对npm 和node进行升级更新。

赶紧检查了一下我node的版本, 因为是两年前进公司安装的node, 所以版本还是8.2.1,后面一直没有主动去升级更新,所以现在需要升级╮(╯▽╰)╭

升级的解决方案如下:

npm 升级的命令行:

npm update -g

 

node.js升级的命令行如下:

npm install -g n

n stable  / n latest

 

以为到这里问题就解决了?

结果执行npm install -g n 报错

这时需要强制执行:

npm install -g n --force

然后执行 n stable

又报错: 

bash: n: command not found  ╮(╯▽╰)╭

 

这熟悉的经历是  node的版本管理n模块在公司电脑全局安装之后无法使用, 没办法, 赶紧在 alias.bashrc 文件里面配置了一行:

alias n = 'node/d/user/(username)/AppData/Roaming/npm/node_modules/bin/n'

 执行 source alias.bashrc 之后

然后执行  n lates/ n stable 发现还是都报错, 后面了解到, 在我目前的公司使用命令行升级,是无法实现node版本更新的, 只能去官网下载最新node版本包然后重新安装 ╮(╯▽╰)╭

 

最后, 下载node 最新版本之后 查看版本号

node -v

v10.16.3

 

再次尝试启动项目, 这次终于启动成功~~坎坷的项目启动之路 终于结束✿✿ヽ(°▽°)ノ✿

 

最后, 去官网上又确认了一下, 发现对于vue-cli3项目,node的使用版本是有要求的,需要在8.9 以上。

 

 

以上就是这次项目启动报错问题解决的全过程, 记录一下, 希望能给有需要的人一点参考~~

 

Logo

前往低代码交流专区

更多推荐