facebook / create-react-app

Set up a modern web app by running one command.
https://create-react-app.dev
MIT License
102.51k stars 26.78k forks source link

`npm start` variable `BROWSER` is not working. #11873

Open minnie-J opened 2 years ago

minnie-J commented 2 years ago

package.json

"scripts": {
    "start": "BROWSER=chrome react-scripts start"
}

It works in CRA v4.x. But it doesn't work in CRA v5.0.0 It opens with the default browser (Firefox).

Environment

Windows 10 WSL 2 node v14.16.0 npm v6.14.11

daudminhas commented 2 years ago

I also did a much research on this issue but couldn't find a working solution. The snippet below is not a proper solution but achieved my requirement and might be helpful for you.

"start": "set \"BROWSER=none\" && start firefox localhost:3000 && react-scripts start" (Windows)

tusharsdesai commented 2 years ago

I tried setting the BROWSER envrionment variable on command line, in .env file, in package.json as well as exporting from my .bashrc (on Ubuntu), but it does not work with react-scripts 5.0.1. When I reverted back to 4.0.1, it worked. So something is still broken in 5.0.1.

ERGeorgiev commented 2 years ago

IF YOU ARE USING ANGULAR: In the package.json:


  "scripts": {
    ....
    "start": "set \"BROWSER=none\" && ng serve --open",
    ....
  },

Remove the '--open'

juan-montilla commented 1 year ago

This issue is still happening. react-scripts: 5.0.1 OS: Ubuntu

alexiuscrow commented 1 year ago

bump

shiva-karthick commented 1 year ago

Yup, I am having the same issue too in WSL 2 Ubuntu

yogeshwar-b commented 10 months ago

I can confirm, I still have this issue in WSL on Win 11. I tried having "BROWSER=chrome" in the scripts but that didn't help.

Edit : Looks like my issue was different.

I found the solution to my problem. I was running my project in the Windows file system (root/mnt/d/... here d is my local windows drive) from WSL, I moved my project to the Linux file system (root/home/..) and viola it started working fine.

elawad commented 9 months ago

Seeing this issue as well in CRA 5. But works in v4.

On MacOS with Safari as default browser. Setting BROWSER=google chrome in .env no longer lunches Chrome, but Safari.

Although if Chrome is already open, then CRA will use Chrome instead. This is not the case in v4; Chrome will always launch, even if was closed.

Walker555 commented 1 month ago

This issue is still happening. react-scripts: 5.0.1 OS: Linux-Mint

I use Firefox as my default daily web browser and Chrome for development.

workaround steps:

  1. disable start of OS default browser in package.json

    "scripts": {
    "start": "BROWSER=none react-scripts start"
    }
  2. use VS Code debugger launch.json config, for starting desired browser (Chrome):

    {
    "version": "0.2.0",
    "configurations": [
        {
            "type": "chrome",
            "request": "launch",
            "name": "Chrome localhost",
            "url": "http://localhost:3000",
            "webRoot": "${workspaceFolder}",
            "userDataDir": "${env:HOME}/.vscode/vscode-chrome-debug-userdatadir"
        }
    ]
    }