Как импортировать 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!), Не нужно ждать обновления индекса и т. Д.