如何在vue-cli项目中更改端口号

sal*_*man 68 command-line-interface vue.js vuejs2

如何更改Vue-cli项目中的端口号,以便它在另一个端口而不是8080上运行.

Nic*_*win 74

如果您使用的是vue-cli3.x,则只需将端口传递给npm命令即可:

npm run serve -- --port 3000

然后访问 http://localhost:3000/

  • 你节省了我宝贵的时间,因为第一个` - `没有写在doc:https://cli.vuejs.org/guide/cli-service.html#using-the-binary.我正在键入`npm run serve --port 3000`这对我来说似乎合乎逻辑,但我有错误......竖起大拇指! (6认同)
  • 这是因为第一个“--”转义了“npm runserve”的参数,而不是“vue-cli-service”。如果直接编辑 `package.json` 和 `serve` 命令,请按照文档中所示输入: `"serve": "vue-cli-serviceserve --port 3000",` (6认同)

wwe*_*ner 63

迟到了,但我认为将所有这些答案合并为一个概述所有选项是有帮助的.

在Vue CLI v2(webpack模板)和Vue CLI v3中分开,按优先级排序(从高到低).

Vue CLI v3

  • package.json:为serve脚本添加端口选项:scripts.serve=vue-cli-service serve --port 4000
  • CLI选项--portnpm run serve,例如npm run serve -- --port 3000.注意--,这使得将端口选项传递给npm脚本而不是npm本身.至少从v3.4.1开始,它应该是例如vue-cli-service serve --port 3000.
  • 环境变量$PORT,例如PORT=3000 npm run serve
  • .env 文件,更具体的环境覆盖不太具体的环境,例如 PORT=3242
  • vue.config.js,devServer.portdevServer: { port: 9999 }

参考文献:

Vue CLI v2(已弃用)

  • 环境变量$PORT,例如PORT=3000 npm run dev
  • /config/index.js: dev.port

参考文献:

  • 看起来这改变了最新的vue cli(使用3.4.1),这是我在package.json中的“ serve”行:`“ serve”:“ vue-cli-service serve --port 4000”,`。很棒! (3认同)
  • @Ryan-这是昨天在VueJS CLI存储库问题中报告的:https://github.com/vuejs/vue-cli/issues/4452据说要安装portfinder(https://github.com/http-party/ node-portfinder /),因为这发生了重大变化。 (2认同)

Tom*_*aya 31

截至本答复撰写时间(2018年5月5日),vue-cli其配置已在<your_project_root>/vue.config.js.要更改端口,请参阅以下内容:

// vue.config.js
module.exports = {
  // ...
  devServer: {
    open: process.platform === 'darwin',
    host: '0.0.0.0',
    port: 8080, // CHANGE YOUR PORT HERE!
    https: false,
    hotOnly: false,
  },
  // ...
}
Run Code Online (Sandbox Code Playgroud)

完整的vue.config.js参考资料可以在这里找到:https://cli.vuejs.org/config/#global-cli-config

请注意,如文档中所述,"webpack-dev-server的所有选项"(https://webpack.js.org/configuration/dev-server/)在本devServer节中提供.


小智 16

如果要更改 localhost 端口,可以更改package.json 中的scripts 标签:

 "scripts": {
    "serve": "vue-cli-service serve --port 3000",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
Run Code Online (Sandbox Code Playgroud)


sam*_*ayo 15

Vue-cli webpack模板的端口位于您的应用程序根目录中myApp/config/index.js.

您所要做的就是修改块port内的值dev:

 dev: {
    proxyTable: {},
    env: require('./dev.env'),
    port: 4545,
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    cssSourceMap: false
  }
Run Code Online (Sandbox Code Playgroud)

现在,您可以访问您的应用 localhost:4545

如果你有.env更好的文件从那里设置它

  • 在最新的vuejs版本中.不再使用该文件,而是使用:<your_project_root> /vue.config.js. (11认同)
  • `“ scripts”:{“ serve”:“ vue-cli-service serve --port 80”},` (5认同)
  • Vue CLI 3在项目根目录中使用vue.config.js. 它必须手动创建IIRC. (3认同)
  • 那里没有 vue.config.js (3认同)
  • 文件myApp / config / index.js不存在! (2认同)

Pra*_*ato 12

第一个选项:

打开package.json并在“serve”部分添加“--port port-no”

就像下面一样,我已经做到了。

{
  "name": "app-name",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve --port 8090",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
}
Run Code Online (Sandbox Code Playgroud)

第二个选项:如果你想通过命令提示符

npm run serve --port 8090


Ebr*_*him 9

我的天啊!没有那么复杂,这些答案也有效。但是,这个问题的其他答案也很有效。

如果你真的想使用的vue-cli-service,如果你想在你的端口设置package.json文件,你这“VUE创建<应用程序名称>”命令基本上创建,您可以使用以下配置:--port 3000。所以你的脚本的整个配置是这样的:

...
"scripts": {
"serve": "vue-cli-service serve --port 3000",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint"
},
...
Run Code Online (Sandbox Code Playgroud)

@vue/cli 4.3.1 (vue --version)在 macOS 设备上使用。

我还添加了 vue-cli-service 参考:https : //cli.vuejs.org/guide/cli-service.html


小智 8

如果您使用的是vue cli 3,则另一个选择是使用配置文件。做一个vue.config.js在同一水平作为你的package.json,把一个配置,如下所示:

module.exports = {
  devServer: {
    port: 3000
  }
}
Run Code Online (Sandbox Code Playgroud)

使用脚本进行配置:

npm run serve --port 3000
Run Code Online (Sandbox Code Playgroud)

效果很好,但是如果您有更多的配置选项,我喜欢在配置文件中进行。您可以在docs中找到更多信息。


小智 8

如果您使用yarn

yarn serve --port 3000
Run Code Online (Sandbox Code Playgroud)


小智 8

  1. 打开package.json
  2. 添加名为 的脚本serve"serve": "Vue-cli-service serve --port 8081"
  3. npm run serve 你将在服务器上运行 8081
{
  "name": "app-name",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve --port 8081", 
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  }
}
Run Code Online (Sandbox Code Playgroud)


air*_*aft 7

webpack.config.js:

module.exports = {
  ......
  devServer: {
    historyApiFallback: true,
    port: 8081,   // you can change the port there
    noInfo: true,
    overlay: true
  },
  ......
}
Run Code Online (Sandbox Code Playgroud)

您可以在module.exports- > devServer- >中更改端口port.

然后你重新开始吧npm run dev.你可以得到它.


小智 6

vue-cli版本 3的另一种方法是.env在项目根目录(旁边package.json)中添加一个包含以下内容的文件:

PORT=3000

运行npm run serve现在将指示应用程序正在端口 3000 上运行。


小智 6

这里有很多答案因版本而异,所以我想我会在 2018 年 10 月使用 Vue CLI 时确认并阐述上面 Julien Le Coupanec 的回答。在这篇文章的最新版本 Vue.js 中 - vue@2.6.10 - 在浏览了这篇文章中的无数答案后,下面概述的步骤对我来说最有意义。该Vue.js文档引用这个难题的作品,但不是很明显。

  1. 打开package.jsonVue.js项目根目录下的文件。
  2. package.json文件中搜索“端口” 。
  3. 找到以下对“端口”的引用后serve,使用如下所示的相同语法编辑脚本元素以反映所需的端口:

    "scripts": {
      "serve": "vue-cli-service serve --port 8000",
      "build": "vue-cli-service build",
      "lint": "vue-cli-service lint"
    }
    
    Run Code Online (Sandbox Code Playgroud)
  4. 确保重新启动npm服务器以避免不必要的疯狂。

该文件显示,一方面可以有效的通过将得到同样的结果--port 8080到年底npm run serve,像这样的命令:npm run serve --port 8080。我更喜欢package.json直接编辑以避免额外输入,但npm run serve --port 1234内联编辑可能对某些人有用。


Jul*_*nec 5

最好的方法是更新package.json文件中的serve脚本命令。--port 3000像这样追加:

"scripts": {
  "serve": "vue-cli-service serve --port 3000",
  "build": "vue-cli-service build",
  "inspect": "vue-cli-service inspect",
  "lint": "vue-cli-service lint"
},
Run Code Online (Sandbox Code Playgroud)


小智 5

要更改端口 (NPM),请转至package.json。编写scripts自己的脚本,例如:

"start": "npm run serve --port [PORT YOU WANT]"
Run Code Online (Sandbox Code Playgroud)

之后你可以开始npm start

"scripts":{"start":"npm runserve --- --port 3000"}