玩框架JS连接

问题描述 投票:5回答:2

我在play框架中使用require.js很棒。在调整Build.scala文件之后,我在生产中获得了缩小的js文件,但是我无法找到有关将所有require.js模块连接到单个js文件中的任何信息?

如果有人能说出正确的方向或指导我,我将不胜感激。

playframework requirejs
2个回答
2
投票

你知道“webjars”(http://www.webjars.org)吗? Webjars是一个框架,它在jar文件中为您提供Javascript和CSS库/框架。您可以将它们作为依赖项添加到构建文件中。它们还提供了一些辅助函数,其中一个函数将requirejs-stuff“编译”(连接和缩小)到一个文件中。

看看文档:http://www.webjars.org/documentation它们提供了一些简单的例子。


2
投票

我在2.2.x中遇到了关于Play中requireJS集成的一些“陷阱”。

a)不要更改路径文件资产位置。 Play的约定似乎是所有公共javascripts进入public / javascripts,你的requireJS驱动程序进入app / assets / javascripts。

b)build.sbt requireJS行位于底部,“playJavaSettings”或“playScalaSettings”下面:

name := "TestContcatJS"

version := "1.0-SNAPSHOT"

libraryDependencies ++= Seq(
  javaJdbc,
  javaEbean,
  cache
)     

play.Project.playJavaSettings

requireJs += "main.js"

requireJsShim += "main.js"

c)您可以使用相对路径引用驱动程序中的公共javascripts。像(在main.js中)的东西:

require.config({
    paths: {
        'public-js': '../../public/javascripts'
    }
});

require([
   "public-js/foo",
   "public-js/bar"
]);
© www.soinside.com 2019 - 2024. All rights reserved.