【问题标题】:Open url in external browser in electron and angular2在电子和 angular2 的外部浏览器中打开 url
【发布时间】:2017-08-31 09:05:28
【问题描述】:

我正在使用 electronangular2 创建一个应用程序。我想提供一个帮助链接,我想在用户的 external(默认)浏览器中打开它。如何做到这一点?

【问题讨论】:

    标签: angular electron


    【解决方案1】:

    在 electron 中,在默认浏览器中打开任何链接实际上非常简单。您只需要从电子导入/要求 shell 模块。

    import { shell } from 'electron';
    
    shell.openExternal('https://example.com');
    

    如果您不使用 ES6,只需将导入替换为 const { shell } = require('electron');

    【讨论】:

    • angular2 抛出错误“找不到模块'电子'”
    • @MohammadShahid 似乎 Angular 2 覆盖了 require/import。只需遵循本指南,您就可以开始了:stackoverflow.com/a/37327006/2004682
    • 如何在特定浏览器中打开它,例如 chrome 而不是我的默认浏览器?
    【解决方案2】:

    你可以使用 nodejs 和命令行,类似这样。

    var exec = require('child_process').exec;
    exec('start /max chrome.exe --incognito --app=' + url, function (error, stdout, stderr) {
        if (error !== null) {
            console.log('exec error: ' + error);
        }
    });
    

    在这种情况下,url 将是您要打开的内容。我在这里打开 Chrome。但是如果你想打开预定的browser,就放这样的东西。

    var exec = require('child_process').exec;
    exec('start /max ' + url, function (error, stdout, stderr) {
        if (error !== null) {
            console.log('exec error: ' + error);
        }
    });
    

    【讨论】:

      【解决方案3】:

      这里有解决办法

      https://stackoverflow.com/a/42512480/848556

      我使用 ngx-electron

      修复了它

      谢谢

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多