如何在烧瓶上提供clojurescript

wir*_*bel 1 python flask clojurescript

我有一个小的Flask应用程序,我想使用一些ClojureScript来增强客户端的用户体验.

现在我无法通过烧瓶服务clojurescript,因为路径混乱了.

Flask声称像Javascript脚本这样的静态文件位于目录中static.我已经改变了我project.clj的编译目标放在那里:

                     :output-to  "static/plot.js"
                     :output-dir "static"
Run Code Online (Sandbox Code Playgroud)

不幸的是,加载此文件时,它无法加载依赖文件goog.require:

"ClojureScript could not load :main, did you forget to specify :asset-path?"
Run Code Online (Sandbox Code Playgroud)

我相信缺少的是领导/static而不是static路径.

我可以为leiningen cljsbuild或clojurescript指定一个前缀吗?

Dan*_*ton 5

您需要:asset-path在已编译的选项中指定一个(如错误消息所示).来自https://github.com/clojure/clojurescript/wiki/Compiler-Options#asset-path

使用:main时,由于Web服务器的配置,通常需要控制入口点脚本尝试加载脚本的位置.:asset-path是相对URL路径,而不是文件系统路径.

   :asset-path "assets/js"
Run Code Online (Sandbox Code Playgroud)