如何将不同的 JS 文件导入到不同 haml 视图的布局中



通常,我会在每个haml文件中包含它们,但是由于主布局包括jquery,因此所有新的js文件都必须出现在jquery src之后。 如何根据当前使用的 haml 包含不同的 JS 文件?

所以基本上我得到了:

haml :login_signup, :layout => :'main'

从 login_signup haml 文件中,我想传递要从 :main haml 文件启动的 JS 文件的名称。

根据 Haml 的文档,您应该能够在 haml 文件中包含脚本,如下所示:

%script{:type => "text/javascript",
:src  => "javascripts/script"}

我强烈建议研究使用 webpack 来处理 js 依赖项和创建捆绑包。这将使管理何时加载哪些js文件变得更加容易。我发现这篇文章很好地解释了为什么选择 webpack。

您可以在布局文件中执行条件。

-if request.path_info.include? '/some/path'
=# include your scripts

或者,您可以将脚本文件放在页面 haml 本身的底部。

最新更新