【问题标题】:Play Framework [2.4.x]: Difference between a script file as an Asset, a Public file, and/or Header?Play Framework [2.4.x]:作为资产、公共文件和/或标题的脚本文件之间的区别?
【发布时间】:2016-01-27 15:03:06
【问题描述】:

我对在哪里使用脚本(例如 JS、CoffeeScript)及其背后的规则/想法感到困惑。

在游戏中,我可以使用app/assets/javascripts 和/或/public/javascripts 文件夹和/或head 中的脚本,然后使用script 标记。有什么不同?我应该在这里遵循什么规则?

【问题讨论】:

    标签: playframework playframework-2.4


    【解决方案1】:

    我猜你的主要困惑是关于 Compiled AssetsUnmanaged Assets。基本上,Play 中编译的资产必须定义在app/assets 目录中。 它们由构建过程处理,源代码被编译成标准的 JavaScript、CSS 等文件

    生成的文件作为标准资源分发到与其他非托管资产相同的 public/ 文件夹中,这意味着编译后使用它们的方式没有区别

    例如,app/assets/stylesheets/main.less 上的LESS 源文件将作为标准资源在public/stylesheets/main.css 上提供。 Play 会自动编译main.less

    另外,play 的文档在Assets 上有详细的主题。

    【讨论】:

    • 我同意 Ali 并希望添加模板(包括大量 JavaScript)存储在 app/views 中。 Play 中的模板在 Twirl 中并已编译。更多信息在playframework.com/documentation/2.4.x/ScalaTemplates
    • 您是指未编译的资产吗?因为您编写了编译资产,然后您编写了“源代码已编译”。
    • 是的。事实上,它们是待编译的资产或资源,例如 less
    • 编译资产是指您希望编译的资产。
    • @AliDehghani 这是迄今为止我得到的最好/唯一的答案。但是,您能否更新您的答案并指出我是否应该触摸公用文件夹?所以前端团队应该只能更新 /assets/javascripts 和 assets/stylesheets 文件夹,不理会 public 文件夹?
    猜你喜欢
    • 1970-01-01
    • 2021-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多