Допустим, у меня есть файл cljs
, содержащий следующее:
(ns foo)
(defn add [x y]
(+ x y))
, и я хочу сделать его доступным в виде библиотеки JavaScript для разработчиков, не являющихся ClojureScript (в первую очередь ориентированных на node.js).Я могу сделать это:
clj -m cljs.main -c foo
Но проблема в том, что вывод ориентирован на систему модулей Google Closure (например, goog.require
).Я могу установить цель на none
с флагом -t
(в отличие от браузера или узла), и это ... не исправляет это.Установка node
также не решает проблему: нет index.js
(это называется main как в Java), нет module.exports = blah blah
.Похоже, что он предназначен для автономных приложений с полным узлом, а не для библиотек.
Я понимаю, что ClojureScript использует закрытие Google для своих собственных подмодулей, и я не обязательно ищуизбавиться от всего этого (я не уверен, что вы могли бы ).И я получаю, что собственные модули JavaScript es2015 отсутствуют из-за их статической природы.
I может массировать вывод вручную или с помощью скрипта, чтобы играть хорошо с экосистемой npm, но яУдивило, что нет опции компилятора, которая может выводить дружественный к npm модуль.Или есть?Я просто читаю --help
неправильно?