0
私はMeteorでファイルブラウザを実装しようとしています。ユーザーは、いくつかのネットワークフォルダを経由して、後で処理するためにコレクションに追加することができます。コールバックからのフィードヘルパー
これは、特定のディレクトリ
<template name="folderBrowser">
<ul>
<li class="js-browseUp">..</li>
{{#each folder}}
<li class="js-selectFolder">{{.}}</li>
{{/each}}
</ul>
</template>
サーバーメソッドからの私の単純な表示テンプレート「..」とフォルダは、フォルダの内容
'displayFolderContent'(folderName) {
var folders = fs.readdirSync(folderName)
console.log(folderName +':'+ folders);
return folders;
}
そして、私の試み(動作しない)を取得することです。私はヘルパーに関数を渡していると信じていますが、メソッドは非同期なので、直接 "d"を渡すことはできませんが、これを解決する方法はわかりません。
Template.folderBrowser.helpers({
folder: function() {
Meteor.call('displayFolderContent', myFolder, function(e, d) {
console.log(d); // logs an array of folder content correctly into browser console
return d;
});
}
});
は、ヘルパーからメソッドを呼び出すことは間違いありません。 OP、これは正しい解決策です。 – zim
私はその点を数時間後にも得ました。 ReactiveVarとReactiveArrayパッケージを使用しています。よく働く! –