跳转至

运行启动项目自动浏览器打开

修改 package.json

package.json 文件中,你可以通过修改 scripts 部分来实现自动打开浏览器。具体步骤如下:

  1. 打开你的项目的根目录,找到 package.json 文件并打开它。

  2. 找到 scripts 部分,它应该看起来像这样:

    "scripts": {
      "serve": "vue-cli-service serve",
      "build": "vue-cli-service build",
      "lint": "vue-cli-service lint"
    }
    
  3. 修改 "serve": "vue-cli-service serve""serve": "vue-cli-service serve --open"。修改后的 scripts 部分应该看起来像这样:

    "scripts": {
      "serve": "vue-cli-service serve --open",
      "build": "vue-cli-service build",
      "lint": "vue-cli-service lint"
    }
    
  4. 保存 package.json 文件的修改。

  5. 在终端或命令行中,运行 npm run serveyarn serve(取决于你使用的包管理器)。这时,应该会自动打开浏览器,并导航到你的应用。

这种方式的设置只会影响到 serve 命令,不会影响到其他的 vue-cli-service 命令。如果你只想在运行 serve 命令时自动打开浏览器,这种方式可能更适合你。

修改 vue.config.js 配置 (Vue CLI 3及以上版本)

在Vue CLI 3及以上版本中,可以通过修改vue.config.js文件来设置项目启动后自动打开浏览器。如果你的项目中没有这个文件,你可以在项目的根目录下创建一个。

vue.config.js文件中,你可以添加如下的配置:

module.exports = {
  devServer: {
    open: true
  }
}

这样,每次当你运行npm run serve或者yarn serve命令时,浏览器就会自动打开你的项目。

如果你想要指定浏览器,你可以这样设置:

module.exports = {
  devServer: {
    open: 'Google Chrome' // 或者其它浏览器名称
  }
}

这样,每次你启动项目时,都会在指定的浏览器中打开你的项目。

配置项

devServer 是 webpack-dev-server 的配置项,它可以提供很多配置选项用于设置开发服务器。下面是一些常见的配置项:

  1. open:布尔值,是否在服务器启动后打开默认浏览器。也可以是字符串,指定要打开的浏览器。

    open: 'Google Chrome' // 或者其它浏览器名称
    
  2. host:字符串,指定开发服务器监听的主机名。默认为 'localhost'

  3. port:数字,指定开发服务器监听的端口号。默认为 8080

  4. https:布尔值,是否使用 HTTPS 协议。默认为 false

  5. hot:布尔值,是否启用模块热替换(Hot Module Replacement)。默认为 false

  6. compress:布尔值,是否启用 gzip 压缩。默认为 false

  7. proxy:对象,用于设置代理。例如,你可以将 API 请求代理到其他服务器上。例如:

    proxy: {
      '/api': {
        target: 'http://localhost:3000',
        changeOrigin: true
      }
    }
    
  8. historyApiFallback:布尔值,当使用 HTML5 History API 时,任意的 404 响应都可能需要被替代为 index.html。默认为 false

  9. overlay:布尔值或对象,当存在编译器错误或警告时,在浏览器中显示全屏覆盖。默认为 false

  10. publicPath:字符串,指定在浏览器中引用的路径。默认为 '/'

  11. contentBase:字符串或数组,告诉服务器从哪里提供内容。只有在你想要提供静态文件时才需要。默认为项目的根目录。

以上配置项都可以在 vue.config.js 文件的 devServer 对象中设置。更多的配置项可以参考 webpack-dev-server 的官方文档

区别

确实,你也可以通过修改 package.json 文件中的 scripts 部分来实现自动打开浏览器。例如,将 "serve": "vue-cli-service serve" 改为 "serve": "vue-cli-service serve --open"

这两种方法的效果是一样的,都会在执行 serve 命令时自动打开浏览器。它们的主要区别在于设置的范围和灵活性:

  1. 修改 vue.config.js 文件:这种方式的设置是全局的,会影响到所有的 vue-cli-service 命令,包括 servebuild 等。此外,vue.config.js 文件还可以包含更多的配置选项,如代理设置、热更新等。

  2. 修改 package.json 文件:这种方式的设置只会影响到特定的命令,比如上述的 serve 命令。如果你只想在运行 serve 命令时自动打开浏览器,而不想影响到其他命令,那么这种方式可能更适合你。

总的来说,如果你的需求比较简单,只想在运行 serve 命令时自动打开浏览器,那么直接修改 package.json 文件就可以了。如果你需要更多的配置选项,那么建议使用 vue.config.js 文件。