WebSQL в ClojureScript?

У меня возникли проблемы с форматированием оболочки ClojureScript для websql. Основная проблема заключается в том, что JavaScript использует аргументы tx и err для websql, которые работают без определения. Когда запускается версия ClojureScript, код выдает ошибку, потому что tx не определен. Вот пример кода, которому нужно следовать вместе с учебником websql от PhoneGap, который я пробовал:

(defn populateDB [tx]
  (.executeSql tx ("CREATE TABLE IF NOT EXISTS foo (id unique, text)"))
  (.log js/console "table added"))

(defn errorCB [err]
  (.log js/console (str "There was an error" (.code err))))

(defn successCB []
  (.alert js/window "It worked!"))

;; Run the transactions
(def db
  (.openDatabase js/window "Database" "1.0" "Cordova Demo" 1024))

(.transaction db (populateDB) (errorCB) (successCB))

Есть ли способ заставить это работать или какие-либо библиотеки, которые уже существуют для websql + ClojureScript?

1 ответ

Решение

Я думаю, что этот вопрос был довольно глупым. Я должен был посмотреть на это больше, прежде чем писать: с. Для справки, вот один из способов написать это:

(def db
  (.openDatabase js/window "Database" "1.0" "Cordova Demo" 1024))

(.transaction db.
              (fn [tx]
                (.executeSql tx "CREATE TABLE IF NOT EXISTS DEMO (id unique, data)"))
              (fn [err]
                (.log js/console.
                  (str "There was an error " (.code err))))
              (fn []
                (.log js/console "It worked!")))
Другие вопросы по тегам