Angular 2は、ファイルシステムにアクセスできないWebブラウザで実行されることがわかりました。Electronを使ってAngular 2アプリのファイルシステムにアクセスする
しかし、私は私のフロントエンドとして電子を使用していますし、また電子を経由してアプリを実行している:
"build-electron": "ng build --base-href . && cp src/electron/* dist",
"electron": "npm run build-electron && electron dist"
。したがって、私は一番最後にelectron dist
を実行しますnpm run electron
でそれを実行します。
私はelectron
を実行していて、ng
ではないので、私はファイルシステムにアクセスできるはずです。しかし、私がやるとき:
import * as fs from 'fs'
私はエラーを取得する:
同様ng:///AppModule/AppComponent_Host.ngfactory.js:5 ERROR TypeError: __WEBPACK_IMPORTED_MODULE_0_fs__.readFileSync is not a function(…)
、私は試してみてください。var fs = require('fs');
は私が手:
ng:///AppModule/AppComponent_Host.ngfactory.js:5 ERROR TypeError: fs.readFileSync is not a function
これは、エラーが生じ呼び出しです:
this.config = ini.parse(fs.readFileSync('../../CONFIG.ini', 'utf-8'))
誰もがこれを引き起こしているものの任意のアイデアを持っていますか?
ありがとうございました。
こんにちは、 'webpack.config.js'にアクセスするには' ng eject 'しなければなりませんでした。 - 'module.exports'に' externals'配列はありません。私はこれを追加しました。上に挙げた4つの外部(私はもちろん '...'を削除しました)と一緒に追加しました。しかし、コンソールにfsや電子を入力すると、 'fs'というメッセージが表示されます。 「電子」は「不定」です。 – Kevin