電子

2016-04-15 21 views
1
  • 電子版をパッケージ化した後、間違った場所にディレクトリを作成:0.37.5
  • オペレーティングシステム:Ubuntuの15.10

私はelectron-packagerを使用して自分のプロジェクトをパッケージ化。通常、main.jsファイルが存在するアプリケーションディレクトリにdownloadsという名前のディレクトリを作成します。パッケージ化後、localesresourcesディレクトリがあり、resourcesディレクトリ内に別の名前のappがあり、electron.asarというファイルもあります。 appフォルダ内にプロジェクトファイルがあります。電子

実行ファイルを実行すると、/resources/app/の下に作成するのではなく、同じ場所にディレクトリが作成されます。この問題を解決するにはどうすればよいですか?

マイcreateDirectories機能:

// create directory if it does not exist 
function createDirectory(directory, callback) { 
    Fs.mkdirs(directory, function (err) { 
     if (err) { 
      console.error(err); 
     } else { 
      return callback(); 
     } 
    }) 
} 

は、私には、例えば、この関数のパラメータとしてdownloads/images/を与えます。 Fs.mkdirsfs-extraモジュールのメソッドです。アプリを実行しているユーザーが、アプリケーションのインストールディレクトリにファイルを書き込む権限を持っていない可能性があるため

マイディレクトリパラメータはdownloads/images/downloads/videos/

+0

'directory'変数がインスタンス化されているコードを追加できますか? – KeitIG

+0

@KeitIG私は最後に追加しました。 – nope

+0

これはあなたの質問に答えませんが、Vladimが正しいです。 'app.getPath( 'userData')にファイルを置くべきです。' – KeitIG

答えて

2

アプリケーションのインストールディレクトリにアプリのデータを書き込んでいるが、一般的に悪い考えです。おそらくあなたが代わりに行うべきことは、アプリケーションがapp.getPath('userData')によって返された場所にダウンロードしたものを保存することです。

+0

それは問題を解決し、はるかに理にかなっています。ありがとう。 – nope

関連する問題