播放资产管道是不是在生产中生成js文件的缩小版本?

时间:2016-03-03 01:22:21

标签: javascript playframework sbt minify uglifyjs

拥有Play 2.4网络应用程序,我正在尝试使用sbt-uglify从我的.min.js文件中创建.js

路线声明

GET  /assets/*file  controllers.Assets.at(path="/public", file)

管道阶段

pipelineStages := Seq(uglify)

覆盖Assets.at

override def at(path: String, fileName: String, cacheAggressively: Boolean): Action[AnyContent] = {
    super.at(path, redirectToMin(path, fileName), cacheAggressively)
}

private def redirectToMin(path: String, fileName: String): String = {
    val resourceName = some logic to crated the minfile...
    Play.maybeApplication.flatMap(_.resource(resourceName).map(_ => minFile)).getOrElse(fileName)
}

为了测试一切在开发模式下工作,如post中所述,我使用pipelineStages in Assets := Seq(uglify),并生成缩小的javascript文件。但是,当我使用start启动应用程序以指示我们正在生产时,不会生成缩小版本。我真的很感激你对我下一步的看法。

PS1 :我正在使用sbt-uglify-1.0.3,如果它有任何区别。

PS2 :我正在使用sbt-less作为样式表,并且正确缩小了这些样式。

0 个答案:

没有答案