テンプレートのプリコンパイルに使用されるハンドルバーのバージョンが、ページで実際に実行されているバージョンと異なるようです。
具体的にthis.merge
は、Handlebars 1.0.0 final で追加されたため、ページがまだ以前のバージョン (1.0.0rc4 など) を実行している場合、メソッドは存在せず、問題が発生します。
ページで使用されているハンドルバーのバージョンを更新するか、 でテンプレートの事前コンパイルに使用されているハンドルバーのバージョンを元に戻す必要がありますpackage.json
。
[編集:]ダウンストリームの依存関係が NPM によってインストールされる方法が原因で、問題が発生することもあります。たとえば、 で指定することもできます"handlebars": "1.0.11"
が、別のパッケージが Handlebars に依存しており、別のバージョンを使用している場合、が呼び出さpackage.json
れたときにどのバージョンの Handlebars が読み込まれるかについて、ちょっとした宝くじになる可能性があります。require()
重複した依存関係が (バージョンに関係なく) スキップされるように実行することでこれを回避できますが、npm install --production
最終的にはおそらく「最新バージョンに更新して一貫性を保つ」ことになります。