选择Webpack打开的浏览器?

10

我按照在这里找到的CLI安装了Vue.js:

# install vue-cli
$ npm install --global vue-cli
# create a new project using the "webpack" template
$ vue init webpack my-project
# install dependencies and go!
$ cd my-project
$ npm install
$ npm run dev

当我运行它时,它会打开Safari,我的默认浏览器。我想指定Chrome(仅用于开发),而不更改操作系统的默认浏览器。

webpack.dev.conf.js如下:

var utils = require('./utils')
var webpack = require('webpack')
var config = require('../config')
var merge = require('webpack-merge')
var baseWebpackConfig = require('./webpack.base.conf')
var HtmlWebpackPlugin = require('html-webpack-plugin')
var FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')

// add hot-reload related code to entry chunks
Object.keys(baseWebpackConfig.entry).forEach(function (name) {
  baseWebpackConfig.entry[name] = ['./build/dev-client'].concat(baseWebpackConfig.entry[name])
})

module.exports = merge(baseWebpackConfig, {
  module: {
    rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap })
  },
  // cheap-module-eval-source-map is faster for development
  devtool: '#source-map',
  plugins: [
    new webpack.DefinePlugin({
      'process.env': config.dev.env
    }),
    // https://github.com/glenjamin/webpack-hot-middleware#installation--usage
    new webpack.HotModuleReplacementPlugin(),
    new webpack.NoEmitOnErrorsPlugin(),
    // https://github.com/ampedandwired/html-webpack-plugin
    new HtmlWebpackPlugin({
      filename: 'index.html',
      template: 'index.html',
      inject: true
    }),
    new FriendlyErrorsPlugin()
  ]
})

有人知道如何在这个配置中指定Chrome吗?

3个回答

13

在github上已经有一个分配给此问题的issue,但它仍在开发中。

问题链接

更新

问题最终被合并了。现在您可以使用CLI或webpack.dev.conf来指定浏览器。

  1. 使用CLI "start": "webpack-dev-server --config webpack.dev.js --open chrome"

  2. 使用webpack.config.js:

    module.exports = {
      //...
      devServer: {
        open: 'Google Chrome'
      }
    };
    

    文档链接


1
所以 PR 最终被合并,现在允许使用 --open 命令参数。例如 --open firefox。或者在配置中:open: "Google Chrome" - Karuhanga
我的 webpack 执行被深深地嵌套在 lerna monorepo 中的多个服务器运行的 yarn 命令之下,因此命令行参数并不可行。有没有一种方法可以通过环境变量来指定,这样我就不必提交到源代码控制中今天想要测试的浏览器呢? - mo.
如果在Windows 10上“Google Chrome”无法工作,请尝试使用“chrome”。这对我有用。 - EnocNRoll - AnandaGopal Pardue

1

0

对于 vue-cli 5.04,目前似乎唯一可用的版本是在 vue.config.js 中。

module.exports = defineConfig({
    devServer: {
        open: {
            app: {
                name: 'opera',
            }
        }
    },
});

然而

vue-cli-service serve --open-app-name 'opera' 

不起作用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接