Как интегрировать библиотеки (clojars) в плагины Lightable
В качестве упражнения для получения опыта работы с ClojureScript я пишу плагин LightTable и не нахожу способа успешно использовать какую-либо стандартную библиотеку, читаю официальную документацию и даже обновляю ее, чтобы отразить последние изменения, касающиеся путей и т. Д. Я проследовал это видео и прочитал Целая ветка в группе google пробует предложенные решения, даже работая с последним источником github без удачи.
Я пытался в том числе core.async
или же cljs.http
(Я знаю альтернативу встроенного nodejs, просто как пример) после предложенного Иракли рабочего процесса в обсуждении Google. Простейший возможный сценарий:
$ lein version
Leiningen 2.5.0 on Java 1.7.0_55 Java HotSpot(TM) 64-Bit Server VM (Mac OS X 10.9.5) and LT latest (0.7.2)
$ lein new lt-plugin sample
плагин project.clj->
(defproject sample "0.0.1"
:dependencies [[org.clojure/clojure "1.5.1"]
[cljs-http "0.1.20"]
])
основной файл
(ns lt.plugins.sample
(:require [lt.object :as object]
[lt.objs.tabs :as tabs]
[lt.objs.command :as cmd]
[cljs-http.client :as http]
)
(:require-macros [lt.macros :refer [defui behavior]]))
(defn get-users
""
[]
(let [response (http/get "https://api.github.com/users" {:with-credentials? false})]
(prn (:status response))
(prn (map :login (:body response))))) ; evaluated correctly
(get-users) ; loads of errors like
WARNING: Referred var clojure.string/split does not exist at line 1 file:/Users/jaime/.m2/repository/noencore/noencore/0.1.16/noencore-0.1.16.jar!/no/en/core.cljs
Я запускаю lein deps, сохраняю, перезагружаю поведение, перезагружаюсь, обновляю списки плагинов... все возможные комбинации пробовали, с папкой плагинов внутри ~/Library/Application Support/LightTable/plugins
или снаружи.
Должен ли я скачать банки и положить их вручную в папку lib? Похоже lein deps
не работает, как я ожидаю
1 ответ
Да, в настоящее время кажется, что Cljs родной или Cljx, в этом отношении, не резонирует с интерфейсом LightTable.
Попробовав https://github.com/swannodette/om/wiki/Basic-Tutorial вы обнаружите, что это не займет много времени. Вы можете создать связку клавиш LT, чтобы открыть вкладку браузера, перейти к папке проекта index.html
и сделать еще один для перезагрузки (я думаю, что автозагрузка находится в стадии разработки). Затем еще одна вкладка с файлом Cljs, в то время как у вас есть автоматический запуск cljsbuild, обновите браузер и внесите изменения.