Vue-element-admin: 端口不是 9527

Created on 17 Aug 2019  ·  22Comments  ·  Source: PanJiaChen/vue-element-admin

Bug report(问题描述)

npm run dev 后 端口应是9527,现在是一个随机的数字,导致无法热更新。

Steps to reproduce(问题复现步骤)

Screenshot or Gif(截图或动态图)

image

Most helpful comment

根本原因是最新版本的portfinder包有问题,本项目中webpack-dev-server和vue_cli_service需要这个包。默认会安装最新版的。只能等portfinder解决这个问题或者把portfinder降到1.0.21版本。 降低版本的方法很多,简单粗暴的办法就是删除node_modules下面的portfinder包,然后指定版本安装。优雅的处理方式是删掉node_modules,修改package.json,在devDependencies中增加"portfinder": "1.0.21",然后npm install或者npm install --registry=https://registry.npm.taobao.org, 不要用cnpm install, 它会自作聪明地下载最新版本,然后链接过去。 package-lock.json的方式其实也是降版本,有人说不行,是因为某些原因没有真正降成功。

All 22 comments

排查后好像是 webpack 出现了问题,不能按照正常 port 进行编译

是的,我也是同样问题,请问解决了吗?

不要本地访问 用 192.168 的来访问就可以热更新

我还是在关注端口为什么配置不会生效。我换了两台电脑,同样代码,一台port正常一台不正常。对比了依赖包版本有些不同,怀疑是打包过程问题。

是 webpack 的问题, webpack-dev-server 昨天更新了一条代码,把 package.json 里面的 jest 版本升级了。 我觉得应该是这里导致的问题

不只是 element-admin 就是随便的一个 webpack 配置了 dev-server 都没法正常的按照预定端口打包

你的另一台电脑可能是老的依赖,如果删除掉老的依赖重新安装的话可能也会出现问题。

是的,两台电脑jest版本不一样的。那应该就是这里问题。

我也遇到了这个问题,请问解决了吗?

OK,按照上面的朋友建议,更换了依赖版本(把不能用的那台电脑package-lock换成了能用那台的)。已经可用。如果遇到这个问题,建议用一个可用版本的package-lock来锁住可用依赖。具体是哪个依赖的版本问题,我没有深究了。

OK,按照上面的朋友建议,更换了依赖版本(把不能用的那台电脑package-lock换成了能用那台的)。已经可用。如果遇到这个问题,建议用一个可用版本的package-lock来锁住可用依赖。具体是哪个依赖的版本问题,我没有深究了。

能否提供下依赖的版本

OK,按照上面的朋友建议,更换了依赖版本(把不能用的那台电脑package-lock换成了能用那台的)。已经可用。如果遇到这个问题,建议用一个可用版本的package-lock来锁住可用依赖。具体是哪个依赖的版本问题,我没有深究了。

能否提供下依赖的版本

你看下我仓库的cjy365535149/JayWeb 的packagelock可用不。

OK,按照上面的朋友建议,更换了依赖版本(把不能用的那台电脑package-lock换成了能用那台的)。已经可用。如果遇到这个问题,建议用一个可用版本的package-lock来锁住可用依赖。具体是哪个依赖的版本问题,我没有深究了。

能否提供下依赖的版本

你看下我仓库的cjy365535149/JayWeb 的packagelock可用不。

下载你的package-lock.json,正常启动9527端口,感谢

vue-element-admin 这样没问题了。vue-admin-template同样的问题,该改哪里呢

是portfinder这个包的问题,portfinder前几天升级到1.0.22版本出现的这个问题。 https://github.com/http-party/node-portfinder/issues ,这里面几个issue都是关于这个的讨论。 临时解决办法: 指定portfinder的版本为1.0.21

@slinzhang007 也是改package-lock.json,改完npm install 还是22版本

这个问题我纠结了一两天了,使用上面的package-lock.json 也无法正常工作 ,只能等着作者能把这个问题解决了。 暂时使用nginx 转发到9527,能正常使用

根本原因是最新版本的portfinder包有问题,本项目中webpack-dev-server和vue_cli_service需要这个包。默认会安装最新版的。只能等portfinder解决这个问题或者把portfinder降到1.0.21版本。 降低版本的方法很多,简单粗暴的办法就是删除node_modules下面的portfinder包,然后指定版本安装。优雅的处理方式是删掉node_modules,修改package.json,在devDependencies中增加"portfinder": "1.0.21",然后npm install或者npm install --registry=https://registry.npm.taobao.org, 不要用cnpm install, 它会自作聪明地下载最新版本,然后链接过去。 package-lock.json的方式其实也是降版本,有人说不行,是因为某些原因没有真正降成功。

参考楼上@slinzhang007 的改了package.json 删掉node_modules 重新npm install 不知道为何没有成功。我的做法是 :修改了 package.json并且修改了 package-lock.json 对应的位置 , 执行一句npm install [email protected] 就可以了。

参考楼上两位 @slinzhang007 @taylorsfan ,正常启用9527端口
我使用的是yarn,把楼上所列步骤的最后一步改为 yarn add [email protected] --dev

前两天估计是源出问题了,现在把node_module删掉,重新npm install就没问题了

根本原因是最新版本的portfinder包有问题,本项目中webpack-dev-server和vue_cli_service需要这个包。默认会安装最新版的。只能等portfinder解决这个问题或者把portfinder降到1.0.21版本。 降低版本的方法很多,简单粗暴的办法就是删除node_modules下面的portfinder包,然后指定版本安装。优雅的处理方式是删掉node_modules,修改package.json,在devDependencies中增加"portfinder": "1.0.21",然后npm install或者npm install --registry=https://registry.npm.taobao.org, 不要用cnpm install, 它会自作聪明地下载最新版本,然后链接过去。 package-lock.json的方式其实也是降版本,有人说不行,是因为某些原因没有真正降成功。

感谢!解决了我的问题!我昨天就是用的cnpm intstall,导致一直没能解决这个问题,刚才试了下npm install ,端口号的问题解决了

Was this page helpful?
0 / 5 - 0 ratings