Open Redux DevTools in browser from cli

This commit is contained in:
Zalmoxisus 2019-01-05 02:53:24 +02:00
parent 2d69d523ed
commit b00290387e
4 changed files with 35 additions and 2 deletions

View File

@ -60,6 +60,20 @@ reduxDevTools({ hostname: 'localhost', port: 8000 });
So, you can start redux-devtools server together with your dev server.
### Open Redux DevTools
You can add `--open` argument to open Redux DevTools app. If nothing specified or set as `browser` will use default browser:
```
redux-devtools --open
```
To specify the browser:
```
redux-devtools --open=firefox
```
### Connection settings
Set `hostname` and `port` to the values you want. `hostname` by default is `localhost` and `port` is `8000`.
@ -80,6 +94,7 @@ To use WSS, set `protocol` argument to `https` and provide `key`, `cert` and `pa
| `--dbOptions` | database configuration, can be whether an object or a path (string) to json configuration file (by default it uses our `./defaultDbOptions.json` file. Set `migrate` key to `true` to use our migrations file. [More details bellow](#save-reports-and-logs). | - |
| `--logLevel` | the socket server log level - 0=none, 1=error, 2=warn, 3=info | 3 |
| `--wsEngine` | the socket server web socket engine - ws or uws (sc-uws) | ws |
| `--open` | open DevTools app in browser. If nothing specified or set as `browser` will use default browser. | false |
### Inject to React Native local server

View File

@ -0,0 +1,8 @@
var opn = require('opn');
function open(app, options) {
console.log('app', app)
opn('http://localhost:' + options.port + '/', app !== 'browser' && app !== true ? { app: app } : undefined);
}
module.exports = open;

View File

@ -5,6 +5,10 @@ var argv = require('minimist')(process.argv.slice(2));
var chalk = require('chalk');
var injectServer = require('./injectServer');
var getOptions = require('./../src/options');
var server = require('../index');
var open = require('./open');
var options = getOptions(argv);
function readFile(filePath) {
return fs.readFileSync(path.resolve(process.cwd(), filePath), 'utf-8');
@ -61,7 +65,6 @@ if (argv.revert) {
}
if (argv.injectserver) {
var options = getOptions(argv);
var module = getModule(argv.injectserver);
var pass = injectServer.inject(module.path, options, module.name);
var msg = 'Inject ReduxDevTools server into React Native local server';
@ -70,4 +73,10 @@ if (argv.injectserver) {
process.exit(pass ? 0 : 1);
}
require('../index')(argv);
server(argv).then(function (r) {
if (argv.open && argv.open !== 'false') {
r.on('ready', function () {
open(argv.open, options);
});
}
});

View File

@ -45,6 +45,7 @@
"lodash": "^4.15.0",
"minimist": "^1.2.0",
"morgan": "^1.7.0",
"opn": "^5.4.0",
"react": "^16.0.0",
"react-dom": "^16.0.0",
"redux-devtools-core": "^1.0.0-1",