随着 webnoir 被弃用,我决定按照docs中的描述从 fetch 迁移,但由于某种原因,shoreleave.remotes 没有被编译为 Js,因此我得到了
goog.require could not find: shoreleave.remotes.http_rpc
我已经尝试过 remote-callback 和 remotes.macros。我的 ClojureScript 命名空间是这样的
(ns my.cljs.ns
(:require [shoreleave.remotes.http-rpc :as rpc])
(:require-macros [shoreleave.remotes.macros :as fm])
和后端
(ns my.backend
(:use my.views
(:require [compojure.route :as route]
[compojure.handler :as handler]
[cemerick.shoreleave.rpc :as rpc]))
)
(rpc/defremote get-data [last-changed]
[:foo]
)
(defroutes my-routes
(GET "/" [] (intro-view))
(route/files "/" {:root "resources/public"})
(route/not-found "<h1>Page not found</h1>"))
(def my-routing (-> #'my-routes
rpc/wrap-rpc
handler/site))
任何想法如何让它工作?
更新:我发现出于某种原因 goog.require('shoreleave.remotes.http_rpc') 在 goog.provide('shoreleave.remotes.http_rpc') 之前