gpt4 book ai didi

haml - 在使用布局文件的中间人中,我们如何在编译期间为特定的 html 文件追加一个 js 文件?

转载 作者:行者123 更新时间:2023-12-02 01:46:37 25 4
gpt4 key购买 nike

我正在使用 Middleman,我有一个布局文件,它在所有 .html.haml 文件的底部附加了 jQuery CDN。在呈现所有 html 元素后,布局文件添加 jQuery CDN。

我的一个 .html.haml 文件将有一个使用 jQuery 的附加 js 文件;但是,它需要首先看到加载的 jQuery CDN。

我如何告诉 Middleman 在编译期间,为这个特定的 .html.haml 文件追加 js 文件?我尝试在我的 .html.haml 文件的底部附加 = javascript_include_tag "jsfile",但它出错了,因为它需要先加载 jQuery,直到我到达布局文件的末尾。

布局文件:

!!! 5
%html{lang: 'en'}
%head
%body{class: current_page.data.body_class || 'page'}
= yield
// jQuery
= javascript_include_tag "//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"
//I need to insert my js file here, but only for a specific HTML file.

附言另外,我需要将 jQuery 放在文件底部以提高渲染效率,所以我不能将它放在 head 中。

最佳答案

在弄清楚什么对我有用之后,在这里提供我的答案:

首先,我必须通过 .html.haml 文件中的 index_options 设置一个标志:

---
title: My Site
index_options: target_file
---

然后,我必须用 if 语句更新布局文件

!!! 5
%html{lang: 'en'}
%head
%body{class: current_page.data.body_class || 'page'}
= yield
// jQuery
= javascript_include_tag "//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"
//Here's the added update:
= javascript_include_tag "my_jsFile" if (current_page.data.index_options == "target_file")

关于haml - 在使用布局文件的中间人中,我们如何在编译期间为特定的 html 文件追加一个 js 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25316450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com