Мне нужен способ парсить HTML-разметку, чтобы сбивать приложение node.js, написанное на Clojurescript. На стороне клиента я использовал для работы гикори, который, к сожалению, плохо работает на Node.js. Если для какого-либо пространства имен требуется узел hickory.core
, он отказывается запускать приложение, говоря:
ReferenceError: Node is not defined
at hickory$core$node_type (/media/lapdaten/ARBEITSSD/dev/violinas_macchiato/target/out/hickory/core.cljs:35:1)
at Object.<anonymous> (/media/lapdaten/ARBEITSSD/dev/violinas_macchiato/target/out/hickory/core.cljs:39:16)
Если я загружаю библиотеку с помощью figwheel, когда узел уже работает, CIDER дает мне завершение кода для различных функций гикори, но hickory.core/parse-fragment
не определено во время выполнения (hickory.core/as-hiccup
по какой-то причине доступно).
На самом деле это известная проблема с hickory, поскольку она зависит от API DOM браузера, который недоступен в Node.js. Я попробовал (set! js/DOMParser (.-DOMParser (js/require "xmldom")))
, как было предложено на GitHub, но на самом деле я не знаю, куда поместить это выражение. Как правило, обсуждения на GitHub не оставляли меня в покое…
Кто-нибудь получил гикори для работы над Node.js? Любые другие предложения относительно того, как мое приложение может преобразовать HTML в икоту?
Спасибо заранее!
Оливер