ElectronとAngular5を使用して最初のデスクトップアプリケーションを作成しようとしましたが、残念ながらfsモジュールを使用していません。私が正しくFSを輸入しているようだ(Visual Studioのコードとコード補完内のエラーなし)が、私はこのエラーを「fs.readFile」コンソールのプリントを使用しようとしたとき:角5内の電子ノードfsを使うにはどうすればいいですか
Uncaught TypeError: __WEBPACK_IMPORTED_MODULE_2_fs__.readFile is not a function
これは私のサービスのコードですこれまでのところ:
import { Injectable } from '@angular/core';
import { ElectronService } from 'ngx-electron';
import * as fs from 'fs';
import { OpenDialogOptions } from 'electron';
@Injectable()
export class FileService {
dialog = this._electronService.remote.dialog;
window = this._electronService.remote.getCurrentWindow();
constructor(private _electronService: ElectronService) { }
loadFileContent(): void{
this.dialog.showOpenDialog(this.window, {},(fileNames) => {
if(fileNames === undefined){
console.error("no files selected!");
return;
}
fs.readFile(fileNames[0], "utf-8", (err, data) => {
if(err){
console.error("Cannot read file ",err);
return;
}
console.log("The content of the file is : ");
console.log(data);
});
});
}
}
私はここで何かを逃していますか? fsがロードされていないか、何か?誰もが助けてくれてありがとう!
電子内でファイルシステムにアクセスする別の方法はありますか?これはDesktop Apps用であり、サーバー用ではありません。この投稿のために、ファイルシステムにアクセスすることは可能ですが、角型またはタイプスクリプトで作成されていないので、私はそれを再現できません:https://ourcodeworld.com/articles/read/106/how-to-choose-read- save-delete-or-file-with-electronic-framework – sonnenpriester
角度バージョンに応じて、webpack configにアクセスできます。あなたがそれを変更することができれば。ターゲットをノードに設定します。うまくいくかもしれない。 _target: 'node'、_ – kimy82
webpackの設定を取得するために私のプロジェクトで現在ejectを実行しましたが、ビルドファイルが壊れました。 Uncaught ReferenceError:exportsは定義されていません... polyfills.bundle.js、vendors.bundle.js、main.bundle.jsのstyles.bundle.js ... Webでヘルプをチェックしていますが、おそらくあなたは何か良いことを知っていますか? – sonnenpriester