問題タブ [heist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - パッケージ名とバージョンを前に付けた型名
私は Haskell にかなり慣れていないので、Happstack Crash Courseをフォローしようとしています。いくつかの例を実行しましたが、 happstack-heist exampleを試したところ、奇妙なコンパイル エラーが発生しました。私がコンパイルしているファイルは次のようになります。
エラーは次のとおりです。
パッケージ名とバージョン番号を前に付けた型が必要なようですが、わかりません。happstack-server と happstack-heist の両方が でインストールされましたcabal install
。
haskell - Snap でルートと html (Heist) を操作する
( 、、、 ) にテンプレート ( *.tpl
) があります。そして、これが私のものです:my-snap-app/snaplets/heist/templates
main.tpl
page1.tpl
page2.tpl
page3.tpl
Main.hs
どうやって:
a) Web アプリですべてのテンプレートを使用できるようにしますか? つまり、 、、page1.tpl
、page2.tpl
、page3.tpl
に
アクセスできるようにしたいのです。ページごとに必ずルートを追加する必要がありますか?それとも一度にすべてのページにアクセスできるようにするためにルートを追加できますか?localhost://page1
localhost://page2
localhost://page3
2)main.tpl
は、メイン テンプレート (レイアウト) です。マスター レイアウト テンプレートとしてpage[123]
使用する にはどうすればよいですか?main.tpl
haskell - テンプレートを代用しない強盗
hereからコピーして貼り付けて最新化した次のコードがあります(元の例は最近のバージョンの Heist ではコンパイルされなくなりました)。
そして、次のテンプレート:
このプログラムを実行すると、テンプレート全体が (ほぼ) そのままコンソールに出力されます。置換は行われません。おそらく、最新の Hesit バージョンで必要な関数呼び出しが欠落している可能性があります。ドキュメントで追跡しようとしましたが、うまくいきませんでした。うまくいかないのはなぜですか?
出力:
haskell - Heist の例が機能しない: 'hcCompiledSplices' はレコード セレクターではありません
Heist の使用方法を理解しようとしていますが、見つけた例はどれも機能していないようで、私と同じ問題を抱えている人を他に見つけることができないようです。ここでいくつかのサンプルコードを見つけました:
ただし、最初の例を実行しようとすると、次のエラーが発生します。
私は何を間違っていますか?
haskell - Compiled Heist (Haskell) で、スプライスを事前に作成する必要があるのはなぜですか?
HTML テンプレート (.tpl ファイル) を前もって ( でloadTemplates
) 処理し、HeistConfig
. これにより、Heist は事前に HTML をより効率的な形式に処理できます。
ただし、スプライスも事前に作成して の中に入れなければならない理由がわかりませんHeistConfig
。これの利点は何ですか?とにかくスプライスは実行時に計算されるため、利点はわかりません。この背後にある思考プロセスは何ですか?
これは、スプライスが(実行時だけでなく)ロード時にもコードを実行できるためだと思います。これが主な説明ですか?