上午更新了下vue-cli,然后生成了一个移动端项目,然后我用平常的ip地址替换localhost打开项目。发现打开不了,然后我就跑了一遍之前的项目,发现可以打开。就很纳闷,各种检查,最后确定是配置问题,然后一行行的对比老项目,最后发现dev-server.js 内的一行代码
var server = app.listen(port, 'localhost')
凶手终于找到了,查了文档发现localhost这个参数是限定服务host为localhost,参数不加,则可以以127.0.0.1、localhsot、本地ip地址打开。
11月13使用最新的vue init webpack myproject构建项目,发现build/下边没有了dev-server.js文件,出现了这个问题。
解决方法:
build/webpack.dev.conf
//host: process.env.HOST || config.dev.host,
host: '0.0.0.0',
npm install -g @vue/cli-init
vue init webpack my-project
2018-07-11使用以上命令建立的项目,修改了config/index.js
中dev.host
为0.0.0.0
, 电脑使用ip/localhost/127.0.0.1
均可访问, 但同一局域网的其他设备通过ip还是无法访问;直接修改webpack.dev.conf.js
中derServer.host
的值(因为可以被process.env.HOST重写),跟前面一样,其他设备无法访问
@BoleLee 请问现在这个问题解决了吗,我也是局域网内其他设备无法访问
在局域网内其他电脑上,可以访问,但打开的是一个空白页,只有title
"scripts": {
"dev": "node build/dev-server.js",
"start": "node build/dev-server.js",
"build": "node build/build.js",
"unit": "cross-env BABEL_ENV=test karma start test/unit/karma.conf.js --single-run",
"e2e": "node test/e2e/runner.js",
"test": "npm run unit && npm run e2e",
"lint": "eslint --ext .js,.vue src test/unit/specs test/e2e/specs"
},
Most helpful comment
11月13使用最新的vue init webpack myproject构建项目,发现build/下边没有了dev-server.js文件,出现了这个问题。
解决方法:
build/webpack.dev.conf
//host: process.env.HOST || config.dev.host,
host: '0.0.0.0',