3

leiningen プロジェクトを起動するように変換しようとしました: https://github.com/borkdude/lein2boot

serve タスクを使用してハンドラーを提供します。ハンドラーは API を提供し、ファイルも提供します。reload タスクを使用して、javascript をリロードできるようにしたいと考えています。

リロード タスクは完全なリソース パス ( ) を使用して変更された JavaScript をブラウザーに送信するため、HTML と JavaScript をリソース ディレクトリ (この例では "assets") のルートに配置する必要がありました/main.js。これは(resources "/" {:root ""})、Compojure でクラスパスのルートも提供する必要があることを意味します。これの問題は、誰でもクラスパス全体から任意のファイルを要求できることです。

javascript をassets/public/main.jspublic directory: に再配置してサービスを提供すると(resources "/" {:root "public"})、「/main.js」でファイルをリクエストできますが、リロード タスクはブラウザに「/public/main.js」からファイルをリロードするように通知します。 404。

どうすればこの問題を解決できますか?

4

1 に答える 1

1

これはhttps://github.com/adzerk-oss/boot-reload/issues/18で取り組んでいるようですが、最終的:asset-pathには相対ルートを提供するオプションが可能になります。

于 2015-06-02T09:47:03.690 に答える