問題タブ [electron]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
8313 参照

ecmascript-6 - Electron & ES6 gulp および ES6 モジュールを使用する場合に require remote/ipc を実装する方法

私は ES6 js ファイルを使用しており、これは gulp (browserify/babel) によってコンパイルされます。ES6 ファイルの例は次のとおりです。

メインウィンドウなどを設定するために使用される通常の App.js があります。次に、html ページは、基本的にすべての ES6 クラスが 1 つのファイルにコンパイルされた main.min.js ファイルを使用します。

loader.es6 ファイル

Main.es6 ファイル

コンパイルして実行すると、これはすべて正常に動作し、すべて問題ありません...しかし、「IPC」、「リモート」モジュールを実装したい場合は、コンパイルに問題があります。require()または import..私のクラス内のメソッド。

そのため、次のことを行うと失敗します。

また

これを実行または達成することは可能ですか、それとももっと考えて通常の js に戻す必要がありますか。

どんなアイデア/アドバイスもありがとう

編集:エラーの詳細を追加

問題のサンプル ファイルMain.es6

上部に追加された変数を参照してvar Remote = require('remote')ください。これにより、次のエラーが発生します。

使ってもimport Remote from 'remote'

0 投票する
2 に答える
115 参照

javascript - ノードのオブジェクトで「これ」を使用していますか?

私は Electron を使用して小さなデスクトップ アプリを作成し、module.exports. 「サーバー」側では、これは正常に機能します。ただし、エレクトロンのドキュメントに従って、フロント エンドで module.exports を使用すると、このエラーが発生します。

Uncaught TypeError: this.showProgressbar is not a function"

クライアント側では、これがこのファイルにアクセスする方法です。

この場合、どのように内部メソッドにアクセスすればよいですか?

0 投票する
1 に答える
6731 参照

typescript - Typescript で Electron クラスをインポートする

インテリセンスが機能するように、Electron クラスを Typescript ファイルにインポートするにはどうすればよいですか?

たとえば、これを次のように変更したいと思います。

このようなものに(動作しません):

0 投票する
1 に答える
2988 参照

javascript - Atom Electron - 開発ツールの検出準備完了

この問題は、Chrome ブラウザー ベースのアプリではなく、Chromium/Node.js ( Atom ElectronNode Webkitなど) ベースのアプリに関連しています。

Chromium と Node.js を使用するプログラムのブート コードをデバッグする場合、Dev Tools が呼び出されてから、ブレーク ポイントを実行する機能を含め、実際に完全に起動するまでにかなりの遅延があります。これは、Dev Tools が呼び出された直後に発生するアプリのブート ロジックをデバッグするために、挿入または保存されたブレークポイントがこのブート コードに対して起動しないことを意味します。

私が見つけた唯一の回避策は、アドホック タイムアウトを追加してsetTimeout(continueBootLogic(), <time>)、Dev Tools が完全に読み込まれると想定した後まで、ブート ロジックの開始を延期することです。

MainWindow.on('devtools-opened', function() {...})開発ツールが開いたときにブレークポイントエンジンが起動する前に、Electron が起動する既存のイベントがあります。このイベントを使用すると、実際の準備ができた瞬間に近づくことができますが、もう少し待つにはまだ面倒なタイムアウトが必要です。

開発ツールがコード内のブレークポイントの検出と実行を開始する準備ができたことを正確かつエレガントに検出する方法を見つけた人はいますか?

これがあれば、Electron と nw.js でブート コードをデバッグする作業に大いに役立つため、新しい API をいじる時間を増やすことができます。

サンプルの Electron プログラムは次のとおりです。

パッケージ.json:

main.js:

index.html:

すべてのファイルを同じフォルダーに入れ、実行するには、electron をインストールしてelectron .、package.json と同じフォルダーで実行します。

テストを微調整するには、renderer.html の iWaitTimeout を使用します。

私の回避策のロジックでは、タイムアウトを 100 ミリ秒に設定しています。これは私のシステムでは圧迫される可能性がありますが、コンピューターと負荷に依存する可能性があります。かなり厄介なソリューションIMO。

devtools-breakpoint-ready などのようなイベントが発生すると素晴らしいでしょう。上記のロジックは、少し最適化できる可能性があります。昨夜、Electron を使い始めました。Node Webkit にも同じ問題があります。