6

このブログ投稿によると、ハンドルバーテンプレートをより適切にデバッグするためにヘルパーを登録する必要がありますが、機能していません。

ReferenceError: Handlebars is not defined

では、どうすれば{{debug}}Meteor /ハンドルバーを使用できますか?

4

4 に答える 4

15

これは、私が自分のプロジェクトでデバッグするために使用するヘルパー関数です。

Template.registerHelper("debug", function(optionalValue) { 
  console.log("Current Context");
  console.log("====================");
  console.log(this);

  if (optionalValue) {
    console.log("Value"); 
    console.log("===================="); 
    console.log(optionalValue); 
  } 
});

次に、を使用してテンプレートで呼び出すことができ、{{debug}}現在のコンテキストが表示されます。詳細については、http://docs.meteor.com/#/full/template_registerhelperを参照してください

于 2012-11-21T00:15:17.840 に答える
6

Meteor 0.4.0では、次のようなハンドラーを登録します。

Template.myTemplate.helpers({
  helper: function () {
    // some code here
    console.log(arguments);
  }
});

ハンドルバーを直接呼び出す必要はありません。

于 2012-09-07T01:32:54.517 に答える
4

ヘルパーをクライアント(または共有)流星コードに登録してください。

Handlebars.registerHelper('helper', function() {
  // Do stuff
});

{{helper}}これは、テンプレートから呼び出し可能である必要があります。

于 2012-09-05T10:18:25.937 に答える
2

完全を期すために:あなたはまた使用することができます

Template.registerHelper('helper', helperFunc);

それ以外のHandlebars.regsterHelper('h',f);

これが優れている小さな理由は、ハンドルバー(つまり、スペースバー、流星適応の本名)の代わりに何か他のものを使用したい場合、アプリはそれほど多くのリファクタリングを必要としないということです。。

これは本当に受け入れられた答えへのコメントです。ある日を楽しみにして、50人の担当者をヒットしました。

于 2014-12-17T22:03:27.397 に答える