Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure Hoplon在加载后端时出错_Clojure_Clojurescript_Boot Clj_Hoplon - Fatal编程技术网

Clojure Hoplon在加载后端时出错

Clojure Hoplon在加载后端时出错,clojure,clojurescript,boot-clj,hoplon,Clojure,Clojurescript,Boot Clj,Hoplon,我有一段时间也有类似的问题。当我在“build.boot”中使用以下命令时,它不会加载后端,直到我进入并编辑后端文件,然后保存。我想知道如何让它在“bootdev”上加载后端 (deftask dev [] (comp (serve :port 8000 :handler 'myapp.handler/app :reload true) (watch) (hoplon) (reload) (cljs))) 干杯 ::编辑::: 如果我编辑'in

我有一段时间也有类似的问题。当我在“build.boot”中使用以下命令时,它不会加载后端,直到我进入并编辑后端文件,然后保存。我想知道如何让它在“bootdev”上加载后端

(deftask dev
 []
 (comp
  (serve
   :port    8000
   :handler 'myapp.handler/app
   :reload  true)
  (watch)
  (hoplon)
  (reload)
  (cljs)))
干杯

::编辑:::
如果我编辑'index.cljs.hl'文件并删除(rpc/init)函数,然后保存然后重新插入(rpc/init)函数,它似乎会加载后端。我尝试了很多方法,从使用页面加载到移动(rpc/init)在索引页面中的位置。我不太明白为什么它需要编辑和保存才能正常工作。

很可能有更好的方法,但以下方法应该有效:

(deftask dev
 []
 (comp
  (serve
   :port    8000
   :handler 'myapp.handler/app
   :reload  true)

  ;; duplicate these
  (hoplon)
  (reload)
  (cljs)

  (watch)
  (hoplon)
  (reload)
  (cljs)))
然后可以像这样重构它:

(deftask do-stuff []
 (comp
  (hoplon)
  (reload)
  (cljs)))


(deftask dev
 []
 (comp
  (serve
   :port    8000
   :handler 'myapp.handler/app
   :reload  true)
   (do-stuff) ; init
   (watch)
   (do-stuff)))

我试过这个,但我不认为它能解决问题。就我所知,似乎问题在于如何正确加载(rpc/init),我将尝试调试更多,然后发布。我真的不知道编辑cljs文件如何使“它似乎加载后端”。不熟悉hoplon,所以这只是一个猜测:可能
(rpc/init)
没有在正确的时间调用?一个简单的测试是执行类似于
(js/setTimeout#(rpc/init)10000)
的操作,或者甚至从控制台/repl运行它,看看是否有效?如果是,那么调用
rpc/init
可能太早。