2016-05-05 8 views
0

私はElectronアプリケーションで作業しており、レンダラーで実行されているスクリプトからファイルにアクセスする方法を理解しようとしています。ですから、main.jsが知っているファイルシステムのパスを、UIをレンダリングするスクリプトと共有しようとしています。 電子:require( 'electron')の意味は何ですか?

私はガイドラインとしてこの例を使用:私は例が書かれているとして、それがうまく動作するように取得することができます

https://github.com/hokein/electron-sample-apps/tree/master/helloworld-sharedobj

。しかし、index.htmlはパスが必要な場所ではなく、UIをレンダリングするスクリプトの〜/ jsフォルダにあります。

私はスクリプトにコードを移動した場合、私はvar remote = require('electron').remote;しようとすると、しかし、私はそれが「モジュールの電子を解決できません」というエラーが出る

私は、インデックス内のコードを残すことによって、恐ろしく、それを解決しました。 htmlと "リモート"グローバル変数を作る。それは正しい方法ではありません。

JavaScriptコードの 'electron'モジュールにアクセスするには、何が必要ですか? `

+0

基本的には、.htmlとフロントエンドレンダリングライブラリを分離したいだけですか? – KeitIG

+0

私は絶対パスを取得してfile://と一緒にアセット(例えばimgとcssなど)を使用できるようにしています。私。上記の要求が失敗するレンダラプロセスでは、 main.jsではうまく動作しますが、私のサービススクリプトではうまく動作しません。 – capouch

答えて

0

私は私はあなたの問題を理解し、完全にわからないんだけど、私はあなたがこのような何かをしたい推測している:

// index.html 
<script> 
    require('path/to/my-js-file'); 
</script> 

// my-js-file.js 
var remote = require('electron').remote; 
0

私はあるSPAのための単一のツリーを維持しようとしていますWebアプリケーション(相対パスがクール)と、より良い単語が必要な場合:file:// - app(相対パスはクールではないようです)の両方をElectronで実行します。

つまり、main.jsファイルで、〜/ public/index.htmlを開くために新しいレンダラウィンドウをポストすることができますが、imgとcssファイルを開いて相対パスとして保持する方法を見つけるのに苦労します(私の.jsファイルの/ publicに)。

修正プログラムは、これまでの例に従え電子窓の便利なメソッド

https://github.com/jprichardson/electron-window

を使用していた示したようにそこに私は、絶対パスをピックアップし、今私のスクリプトは、彼らのニーズを満たすことができます。

関連する問題