最近在研究webpack搭建react的开发环境是,在使用到live-server时报错,一头雾水,报错信息如下
G:\chenqk\app\webpack-react-project>live-server
C:\Users\chenqk\AppData\Roaming\npm\node_modules\live-server\node_modules\opn\index.js:11
const wslToWindowsPath = async path => {
^^^^
SyntaxError: Unexpected identifier
at Object.exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:513:28)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:458:32)
at tryModuleLoad (module.js:417:12)
at Function.Module._load (module.js:409:3)
at Module.require (module.js:468:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (C:\Users\chenqk\AppData\Roaming\npm\node_modules\live-server\index.js:11:9)
at Module._compile (module.js:541:32)
刚出现这个错误的时候一脸懵逼,又特意在群里面问了一大堆,最后没有一个人给出答案的。后来有一段时间直接忽略了,现在要用到这个东西的时候,又碰到这个问题,所以就静下心来试着去解决它。
首先这是在搭建环境的时候出现的问题,所以不可能是我的代码导致的。那就从环境入手。在网上搜了一下,有很多说法,有人说命令执行有问题,仔细对比了一下,发现并没有什么错误。所以看来并不是他的问题。
大家看到错误的原因在提示:C:\Users\chenqk\AppData\Roaming\npm\node_modules\live-server\node_modules\opn\index.js:11
可以看的出来是因为node-js的依赖文件出现了错误,那么我使用的命令是npm install -g webpack,这就基本上锁定了只有两种原因:
- Node-js版本出现问题,使用npm管理的时候出现错误
- live-server下载的版本有问题
于是,我就尝试着下载了一个新的Node-js版本,从原来的v6+升级到v10,然后重新执行一下live-server时就成功了。
G:\chenqk\app\webpack-react-project>live-server
Serving "G:\chenqk\app\webpack-react-project" at http://127.0.0.1:8080
GET /favicon.ico 404 5.472 ms - 150
Ready for changes
也能查看到正常的页面显示:
在自学webpack和react的时候,教程已经不是最新的了,那么在学的过程中尤其是跟着别人的Demo,视频学习的时候就会出现很多莫名其妙的问题,尤其是代码都是一样的,如果你也碰到这种问题,那么你可能需要考虑一下是不是版本的不一致导致了这种问题。
在学习的道路上,我们砥砺前行!