Tower.js は express.js テンプレート エンジン システムをラップするため、設定に以下を追加することで任意の express.js テンプレート エンジンを使用できるはずです。Tower.View.engine = "haml"
Tower.js は、HAML が組み込まれているmintを使用するため、必要なのはディレクトリ内のhaml モジュールだけです。
ただし、スリムは問題があります。最初は直接 mint.js 内にないため、新しいテンプレート エンジンを登録する必要があります。必要な Todo
mint.js が使用できる関数customAdapter
を作成するには、mint.js ソースコードを参照してください。以下は、haml アダプター関数の例です。
function(content, options, callback) {
var result;
result = require('hamljs').render(content, options || {});
if (callback) {
callback.call(this, null, result);
}
return result;
}
- 次のようにして、アダプタを mint.js に追加する必要があります。
require("mint").engines.slim = customAdapter
しかし、Slim 用の express.js エンジンはありません。また、Slim には Ruby コードのスニペットが含まれているため、存在する可能性はほとんどありません。
本当にやりたい場合は、テンプレート ファイル用に独自の JavaScript パーサーを作成し (おそらくhttp://opalrb.org/のようなものを使用しますが、特定の ruby ライブラリは使用しません)、エクスプレスを作成する必要があります。 jsエンジン(方法がわかりません)。
非常に実りある演習になるとは思えません。
Slim ファイルを haml (または jade、または express.js で使用できる任意のテンプレート エンジン) に変換するか、移動しないことをお勧めします。
また、Slim を Haml やその他のテンプレート エンジンに自動的に変換する方法も見つけられませんでした (おそらく Ruby コードが含まれているため)。そのため、完全に手動で変換する必要があります。