问题标签 [sbt-web]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 通过 Play 中的“activator run”运行时获取要编译的资产
我使用 Sass 作为我的 CSS 预处理器,并且试图让它通过资产管道运行。我已经尝试将此 sassTask 实现为源文件任务和 Web 资产任务,但我在这两种方式都遇到了问题。
如果我将 Sass 作为源任务运行(见下文),它会在activator run
请求页面并在页面重新加载时找到更新文件时触发。我遇到的问题是生成的 CSS 文件都被直接转储到target/web/public/main/lib
.,而不是反映在目录下的resources-managed
子目录中。我不知道如何做到这一点。
相反,我尝试将 Sass 编译实现为 Web 资产任务(见下文)。据我所知,以这种方式工作resources-managed
并没有发挥作用,因此我将文件直接编译为target/web/public/main/lib
. 我确定我没有足够动态地执行此操作,但我不知道如何做得更好。但是这里最大的问题是管道在工作时显然没有运行activator run
。我可以使用 运行它activator stage
,但我确实需要它在常规开发工作流程中工作,以便我可以在开发服务器运行时更改样式文件,就像使用 Scala 文件一样。
我尝试通过这些论坛、sbt-web 文档和一些现有插件进行梳理,但我发现这个过程非常令人沮丧,因为 SBT 的复杂性和实际发生的事情的不透明性构建过程。
Sass 编译作为源文件任务:
Sass 编译作为 Web 资产任务:
playframework-2.3 - Play 2.3 requireJs 多模块优化和shim
这是我当前对 Play 2.2.x requireJS 的设置。2.3以后还会继续工作吗?我在 2.3 文档的任何地方都找不到 requireJs 或 requireJsShim。
scala - 如何在 Play Framework 2.3.1 中更改可编译的静态(CoffeeScript、LESS)源目录?
我正在使用 Play Framework 2.3.1 和 Scala 2.11。
例如,我需要将 LESS 和 CoffeeScript 源目录从“app/assets”更改为“app/privateassets”。
如何改变它?
requirejs - Play2.3没有将非webjar javascript文件合并到RequireJS主uglified文件中
升级到 Play 2.3 后,仅当路径来自 webjar 时,requirejs 才能将所有路径捆绑并解压缩到一个主文件中。
IE。如果我的要求的配置部分像这样
然后Bacon.min.js
正确地捆绑到我的main.js
文件中,但bacon.model
库是通过 http 调用单独下载的。
我有一堆尚未“webjared”的javascript依赖项,所以我试图找到解决这个问题的简单方法,而不是制作webjars.org未提供的所有依赖项的webjar
scala - 如何在 PlayFramework 2.3.1 中更改已编译资产的目标文件夹?
使用 PlayFramework 2.3.1、sbt-web、Scala 2.11。
例如,如何将已编译资产的目标文件夹从“public”更改为“pub”?
playframework-2.3 - sbt-concat 支持多个捆绑包?
我正在使用 sbt-concat 在我的应用程序中为 JS 创建包。但是,它似乎不支持创建多个捆绑包。
在我的应用程序中,我想创建一个基本级别的 js 供全球使用。然后我还想创建一个将在某些页面上使用的组件包。
这是 sbt-concat 可以做的吗?
angularjs - 无法让 sbt-mocha 正确查看 Angular webjar 模拟库
我无法在 sbt-web / sbt-mocha 项目中识别 Angular 模拟或 Angular 本身。
我正在编写基于 sbt-web play http://typesafe.com/activator/template/play-2.3-highlights highlight 示例的示例。我杀死了其他插件,但留下了 sbt-mocha 一个。
我在 libraryDependencies 中声明了依赖项:
然后,我编写了一个带有常量的 Angular 应用程序,并将其作为 app.js 放入 assets/javascripts 中:
接下来,我写了一个测试:
然后我启动了 sbt mochaOnly 并得到:
现在,我也尝试过使用 angular.mocks.module ,但它给了我一个错误,即 Angular 不存在。
我还在测试路径中添加了相同的库,认为测试路径可能与主路径隔离,(愚蠢的想法)但这没有帮助。然后我尝试按照http://www.scala-js.org/doc/sbt/depending.html仅包含这样的模拟 js 文件:
但是它给了我一个“/”周围的错误并且没有识别它,所以点击三个......
我已经用 gulp、grunt 甚至 maven 用 maven-jasmine-plugin 完成了几十次,但现在我在 sbt-web 世界中,它使用 mocha,并且没有任何文档可以继续. 我也是 Scala 的新手,想尝试做一些事情,所以如果我还没有得到它,请道歉......很有可能!
我只想用模块函数引导角度模拟库,然后用注入注入像 PI 这样的角度资产。
我有一个包含此代码的 GitHub 存储库......它是: https ://github.com/krimple/sbt-web-project-with-angular/
有人想和我一起破解这个吗?我很想弄清楚它并为 angular 的 play seed 项目提出拉取请求,以便我们实际上进行一些 mocha 测试。更好的是 jasmine sbt 插件,但我认为我们将不得不首先关注 mocha。
playframework - Play Framework sbt-concat 部分工作
我试图使用来自https://github.com/ground5hark/sbt-concat的 sbt-concat 插件。但是,我无法使用通配符。这是我的 build.sbt。
请注意
工作正常。
但是,使用 sourceDirectory.value 的那个不起作用。有人有任何见解吗?
playframework - Play Framework sbt-concat 不适用于通配符设置
我试图将所有 css 捆绑在一个目录及其子目录下。但是,我发现只有指定目录的直接级别下的文件会被捆绑,而不会捆绑子目录中的文件。
然后,我尝试了这样的事情来表明它适用于所有内容,包括“lib.css”-> group(((资产中的sourceDirectory).value/“css”/“core”/“lib”)*“**/ *.css") 这对我不起作用。
我已经在 github 中打开了一个问题,希望它会尽快修复。但是,我想知道那里是否有人已经有了解决方案,如果他可以分享,那就太好了。 https://github.com/ground5hark/sbt-concat/issues/8
playframework-2.3 - 如何缩小 sbt-concat 生成的 js
我正在使用 sbt-concat 来组合 css/js 包进行实验。然后我尝试扩展我的管道以便为我的 css 和 js 做缩小。使用 sbt-css-compress 非常容易,它可以缩小 sbt-concat 生成的所有 CSS。我为 js 尝试了 sbt-closure,但它似乎不起作用。为了清楚起见,我尝试了 sbt-closure 并确认它确实将下面的所有 js 编译到 /assets。但是我想弄清楚它是否适用于 sbt-concat。
例如:如果我有 /assets/js/f1.js 和 /assets/js/f2.js 并且我想将它们组合并缩小为 1 个捆绑文件。