Как импортировать UglifyJS из Scala.js?

Я вполне могу использовать jQuery из Scala.js:

jsDependencies += "org.webjars" % "jquery" % "2.2.1" / "jquery.js" minified "jquery.min.js"

Теперь я хотел бы использовать UglifyJS, и его структура webjar выглядит немного иначе. Кажется, что нет минимизированного js-файла, и даже основной файл, который, вероятно, содержит полную библиотеку, выглядит иначе, он не имеет .js расширение и начинается со следующих строк:

#! /usr/bin/env node
// -*- js -*-

"use strict";

var UglifyJS = require("../tools/node");

Можно ли вообще использовать этот webjar из Scala.js, и если да, то как? Я попробовал следующее, но это не сработало:

jsDependencies += "org.webjars" % "uglifyjs" % "2.7.4" / "bin/uglifyjs"

С этой строкой ошибка SBT была:

[ошибка] (тест:resolvedJSDependencies) org.scalajs.core.tools.jsdep.JSLibResolveException: некоторые ссылки на библиотеки JS не могут быть разрешены:

[ошибка] - отсутствует библиотека JS: bin / uglifyjs

[ошибка], происходящая из: scalafromjs: test, scalafromjs:compile

1 ответ

Решение

Uglify публикуется как uglify-jsне uglifyjs, Кроме того, webjar не был создан для версии 2.7.4, однако есть для 2.7.5.

Вы можете легко запросить автоматическое создание webjar для 2.7.4 в несколько кликов на http://www.webjars.org/npm если вам нужна конкретная версия.

Если вы зайдете на веб-сайт webjars и поищите "uglify-js", вы увидите конфигурацию зависимостей, которую вам нужно использовать: "org.webjars.npm" % "uglify-js" % "2.7.5" (плюс файл, который вы хотите).


Обратите внимание, что по состоянию на 0.6.14 Scala.js поддерживает модули npm с использованием scalajs-bundler.

Эта новая система намного превосходит webjar - у вас есть ВСЕ модули и версии npm, вам не нужно запускать создание самостоятельно (подождите, пока вы не попадете в зависимости от webjar!), Не нужно ждать обновления индекса и т. Д.

Другие вопросы по тегам