meteor でその場でファイルをアップロードして読み取ろうとしています。ただし、これを行うためのパッケージ/チュートリアルが見つからなかったので、FS ライブラリを使用しようとしましたが、いくつかの問題があります。
テンプレートに があり、次のようなイベントがあります。
"change .myFileUpload": function(e, tmpl) {
e.preventDefault();
var fileInput = tmpl.find('input[type=file]');
console.log('test');
// grab a list of the files selected with the file chooser
// input
debugger;
console.log(fileInput);
var theFile = new FS.File(fileInput);
console.log(theFile);
var rose = JSON.parse(Assets.getText(fileInput));
Meteor.call('readTxtFile',fileInput);
Meteor.call('readTxtFile',theFile);
}
メソッド readTxtFile は次のようになります。
readTxtFile : function(file){
console.log(file);
fs.readFile(file, function(err,data){
if(err){
throw new Error("Fail read");
}else{
console.log(data);
}
});
しかし、ファイルをアップロードすると、引数を介して渡されたファイルでページがリロードされ、URL は次のようになります: http://localhost:3000/port?myFileUpload=textfile.txt
コードが行http://localhost:3000/port?myFileUpload=textfile.txtを実行すると、ページがリロードされます
FS.debug = true; を設定しても クライアントログでもサーバーログでも、エラーは表示されません。最初のログを除く
console.log(fileInput);
> <input type="file" class="myFileUpload"> portTmpl.js:12
何かご意見は ?