Solo estoy explorando una forma de abrir el navegador predeterminado desde la API de Visual Studio Code utilizada para desarrollar extensiones.

El siguiente es mi código:

var disposable = vscode.commands.registerCommand('extension.browser', () => {
  // The code you place here will be executed every time your command is executed
  vscode.Uri.call("http://facebook.com");
});

Cómo abrir la URL del navegador desde la API usando la clase vscode.

11
Shan Khan 10 dic. 2015 a las 18:16

3 respuestas

La mejor respuesta

No hay necesidad de nodos o bibliotecas externas.

Si está utilizando VS Code 1.31+, use la función vscode.env.open:

import * as vscode from 'vscode';

vscode.env.openExternal(vscode.Uri.parse('https://example.com'));

Para versiones anteriores de VS Code, use el comando vscode.open:

vscode.commands.executeCommand('vscode.open', vscode.Uri.parse('https://example.com'))

Ambos abrirán la página en el navegador predeterminado del usuario

17
Matt Bierner 21 feb. 2019 a las 07:01

Tuve que usar npm open url para abrir en el navegador.

var openurl = require('openurl').open;
    openurl("http://google.com");
1
Shan Khan 10 dic. 2015 a las 16:12

No necesita instalar una dependencia externa. La apertura de una URL se puede hacer simplemente con solo las bibliotecas Node.js y los comandos del sistema. Por ej. use el child_process.exec para abrir una URL.

Declare una función así:

const exec = require('child_process').exec;

function openURL(url) {
  let opener;

  switch (process.platform) {
    case 'darwin':
      opener = 'open';
      break;
    case 'win32':
      opener = 'start';
      break;
    default:
      opener = 'xdg-open';
      break;
  }

  return exec(`${opener} "${url.replace(/"/g, '\\\"')}"`);
}

Y luego llamarlo desde tu código

openURL('http://stackoverflow.com');
0
Jakub Synowiec 31 ene. 2017 a las 09:55
34205481