iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >在 Hugo 中有条件地渲染多个部分
  • 551
分享到

在 Hugo 中有条件地渲染多个部分

2024-02-09 05:02:56 551人浏览 八月长安
摘要

在HuGo中,有一种非常有用的功能,即可以根据条件来渲染多个部分。这种功能可以使得我们根据特定的情况或条件来展示/隐藏页面的某些部分。无论是在构建静态网站还是动态网站中,这种条件渲染的

在HuGo中,有一种非常有用的功能,即可以根据条件来渲染多个部分。这种功能可以使得我们根据特定的情况或条件来展示/隐藏页面的某些部分。无论是在构建静态网站还是动态网站中,这种条件渲染的功能都能够帮助我们更加灵活地控制页面的呈现方式。在本文中,我将和大家一起探讨如何在Hugo中实现条件渲染多个部分的方法及使用场景。

问题内容

我想渲染除网站主页中的静态文件之外的每个文件夹中的所有 markdown 文件,一种方法是在 hugo 中使用 uNIOn,但随着文件夹数量的增加,我发现自己在重复 union到处都是(带联合的代码被注释了,顺便说一下,它正在工作),所以我认为使用切片会是一个更好的主意,但是当我尝试使用切片时,我收到以下错误 -

渲染页面失败:“home”渲染失败:“(目录路径)\layouts\index.html:12:19”:在 <.pages> 处执行模板失败:无法评估字符串类型中的字段页面

目录结构

index.html 代码

{{ define "main" }}
    {{$sectionNames := slice "posts" "problems" "tutorials"}} {{range $index, $sectionName := $sectionNames}} {{ range where .Pages "Section" $sectionName }} {{}}
  • {{.Title}}

    {{ range .Pages }}

    {{.Title}} · {{.Date.FORMat "January 2, 2006"}}

    {{ end }}
  • {{end}} {{end}}
{{ end }}

解决方法

https://www.PHP.cn/link/1330fef5fe4f742c1918c585c2da13b3

上下文(又名“点”)

关于 go 模板,最容易被忽视的概念是 {{ . }} 始终引用当前上下文

  • 在模板的顶层,这将是可供模板使用的数据集。
  • 但是,在迭代内部,它将具有循环中当前项的值;即 {{ . }} 将不再引用整个页面可用的数据。

在下面的代码中,.pages 中的点具有第一个 range 操作中当前项目的值。该值的类型是字符串,并且它没有字段 pages。这就是为什么它失败了,execute of template failed at <.pages>: can'tvaluate field pages in type string.

{{ define "main" }}
    {{$sectionnames := slice "posts" "problems" "tutorials"}} {{range $index, $sectionname := $sectionnames}} {{ range where .pages "section" $sectionname }} ^^^^^^

一种可能的修复方法是使用 $. 访问全局上下文:.pages ==> $.pages

也许更好的解决方案是列出排除部分。那么当添加更多文件夹时就不需要修改代码了:

{{ define "main" }}
    {{ range where .Pages "Section" "!=" "static" }}

以上就是在 Hugo 中有条件地渲染多个部分的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: 在 Hugo 中有条件地渲染多个部分

本文链接: https://www.lsjlt.com/news/562218.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 在 Hugo 中有条件地渲染多个部分
    在Hugo中,有一种非常有用的功能,即可以根据条件来渲染多个部分。这种功能可以使得我们根据特定的情况或条件来展示/隐藏页面的某些部分。无论是在构建静态网站还是动态网站中,这种条件渲染的...
    99+
    2024-02-09
  • vue如何有条件地渲染slot
    这篇文章主要为大家展示了“vue如何有条件地渲染slot”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue如何有条件地渲染slot”这篇文章吧。有条件地渲染slot每个 Vue&nb...
    99+
    2023-06-27
  • Vue中条件渲染和列表渲染的示例分析
    这篇文章将为大家详细讲解有关Vue中条件渲染和列表渲染的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言什么是条件渲染?在我们的页面中会有很多这样的应用场景,比如说我们今天要上架一个活动,这个活...
    99+
    2023-06-25
  • React中条件渲染的示例分析
    小编给大家分享一下React中条件渲染的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!前言在React中,你可以创建不同的组件各自封装你需要的东西。之后你可以只渲染其中的一部分,这...
    99+
    2024-04-02
  • Vue.js条件渲染和列表渲染以及Vue中key值的内部原理
    目录条件渲染v-ifv-show列表渲染v-for指令面试题:key的内部原理条件渲染 v-if 写法:(1).v-if="表达式"(2).v-else-if=&...
    99+
    2023-05-15
    Vue.js条件渲染和列表渲染 Vue key值内部原理 Vue条件渲染 Vue列表渲染
  • Vue.js条件渲染、列表渲染及Vue中key值的内部原理是什么
    这篇文章主要介绍“Vue.js条件渲染、列表渲染及Vue中key值的内部原理是什么”,在日常操作中,相信很多人在Vue.js条件渲染、列表渲染及Vue中key值的内部原理是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希...
    99+
    2023-07-06
  • 怎么在React条件渲染中使用三元表达式
    本篇内容介绍了“怎么在React条件渲染中使用三元表达式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!三元...
    99+
    2024-04-02
  • 微信小程序中视图层条件渲染的示例分析
    这篇文章给大家分享的是有关微信小程序中视图层条件渲染的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下使用wx:if进行视图层的条件渲染示例:wxml:使用vi...
    99+
    2024-04-02
  • python中if多个条件的示例分析
    小编给大家分享一下python中if多个条件的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!python的五大特点是什么python的五大特点:1.简单易...
    99+
    2023-06-14
  • 如何在Linux中使用grep筛选多个条件
    今天就跟大家聊聊有关如何在Linux中使用grep筛选多个条件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。cat log.txt | grep 条件; cat log.txt | ...
    99+
    2023-06-09
  • mysql中带多个条件的查询方式有哪些
    这篇文章将为大家详细讲解有关mysql中带多个条件的查询方式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。mysql 带多个条件的查询环境:mysql 5.7当一个where语句中同时出现...
    99+
    2023-06-15
  • 如何在C语言中使用if语句处理多个条件?
    如何在C语言中使用if语句处理多个条件? 在C语言中,我们经常需要根据不同情况做出不同的处理。使用if语句可以帮助我们实现这一目的,而当需要处理多个条件时,可以结合if-else语句或...
    99+
    2024-04-02
  • jQuery中Datatable多个查询条件自定义提交事件的示例分析
    这篇文章主要为大家展示了“jQuery中Datatable多个查询条件自定义提交事件的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jQuery中Dat...
    99+
    2024-04-02
  • 为什么在这个 golang 示例中,互斥体部分中包含的条件不会出现死锁?
    在这个 golang 示例中,互斥体部分中包含的条件不会出现死锁的原因是因为互斥体是通过 `Lock()` 和 `Unlock()` 方法来实现对共享资源的互斥访问的。当一个 goro...
    99+
    2024-02-13
  • 如何在SQL SERVER中快速有条件地删除海量数据
    这篇文章主要讲解了“如何在SQL SERVER中快速有条件地删除海量数据”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何在SQL SERVER中快速有条件...
    99+
    2024-04-02
  • 在 Python 中拆分具有多个分隔符的字符串
    要使用多个定界符拆分字符串: 使用 re.split() 方法,例如 re.split(r',|-', my_str)。re.split() 方法将拆分所有出现的分隔符之一的字符串。 import r...
    99+
    2023-09-07
    python 正则表达式 开发语言
  • linearlayout中使用多个weight导致部分子控件消失异常
    问题描述: 在一个linearlayout中写了两个用到weight的布局,在androidstudio中显示正常 但是代码跑起来之后最下面哪一行都消失了; 解决办法1 把两个用到weight的改...
    99+
    2023-10-07
    android
  • 如何使用 gin gonic 在 Go 中上传多部分文件和 json?
    来到编程网的大家,相信都是编程学习爱好者,希望在这里学习Golang相关编程知识。下面本篇文章就来带大家聊聊《如何使用 gin gonic 在 Go 中上传多部分文件和 json?》,介绍一下,希望...
    99+
    2024-04-05
  • PHP怎么在多个文件中正确地读取和写入Session数据
    本篇内容主要讲解“PHP怎么在多个文件中正确地读取和写入Session数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP怎么在多个文件中正确地读取和写入Session数据”吧!确认Sess...
    99+
    2023-07-05
  • PHP如何在多个文件中正确地读取和写入Session数据
    当您在使用PHP会话(Session)时,有时会发现Session在一个文件中可以正常读取,但在另一个文件中却无法读取。这可能会让您感到困惑,因为会话数据应该可以在整个应用程序中共享。本文将解释如何在多个文件中正确地读取和写入PHP会话数据...
    99+
    2023-05-14
    php session
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作