具有不同角色的用户需要在网页顶部有不同的navbar。我的topnavs是th:片段,用单独的文件编写,这部分代码工作正常。但是当我使用th: switch和th:替换时,所有topnavs都会显示在网页中,而不仅仅是一个。
我在寻找这些问题的解决方案,但没有任何帮助:
带有多个大小写的胸腺叶开关语句
如何使用thymeleaf条件-if-elseif-else
我尝试过的事情:
<span th:if = "${role.value} == 'role1' " th:replace = "fragments/topnav :: navbar_role1"></span>
<span th:if = "${role.value} == 'role2' " th:replace = "fragments/topnav :: navbar_role2"></span>
#2
<span th:if = "${role} == 'role1' " th:replace = "fragments/topnav :: navbar_role1"></span>
<span th:if = "${role} == 'role2' " th:replace = "fragments/topnav :: navbar_role2"></span>
#3
<span th:if = "${role} eq 'role1' " th:replace = "fragments/topnav :: navbar_role1"></span>
<span th:if = "${role} eq 'role2' " th:replace = "fragments/topnav :: navbar_role2"></span
#4
<th:block th:switch = "${role}">
<div th:case = "${role} eq 'role1' " th:replace = "fragments/topnav :: navbar_role1"></div>
<div th:case = "${role} eq 'role2' " th:replace = "fragments/topnav :: navbar_role2"></div>
</th:block>
在调试器中,我可以在Java代码中看到String类型的字段角色具有值角色2。它不只是显示第二个导航栏,而是显示两个导航栏。一定是我在Thymeleaf语法中遗漏了什么?
在本例中,目标片段需要位于子元素中,以使替换按预期工作。
假设我们在片段/topnav.html
中有以下片段:
<div th:fragment="navbar_role1">
<div>This is navbar role 1</div>
</div>
<div th:fragment="navbar_role2">
<div>This is navbar role 2</div>
</div>
那么您的主页面可以如下结构:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title>Switch Demo</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<th:block th:switch="${role}">
<th:block th:case="'role1'">
<div th:replace="fragments/topnav :: navbar_role1"></div>
</th:block>
<th:block th:case="'role2'">
<div th:replace="fragments/topnav :: navbar_role2"></div>
</th:block>
</th:block>
</body>
</html>
显然,您可以使用th:block元素或其他元素,例如
另请注意,当使用th:开关时,您不需要以下各项:
th:case="${role} eq 'role1'" // NOT needed
您可以简单地使用值本身:
th:case="'role1'"
这是在此处使用
开关
语句的好处之一。
导航条使用的事 HTML5 的 nav 标签,里面推荐使用 div 容器,导航条有两个主要的部分。一个是 logo 或品牌链接和导航链接。你可以设置这些链接的对齐方式。 右对齐链接 使用右对齐导航链接,只要增加一个 right 类到 <ul> 标签里面。 <nav> <div class="nav-wrapper"> <a href="#" class="brand-logo">Logo<
7.1.3导航条件说明 导航实现,在硬件和软件方面是由一定要求的,需要提前准备。 1.硬件 虽然导航功能包集被设计成尽可能的通用,在使用时仍然有三个主要的硬件限制: 它是为差速驱动的轮式机器人设计的。它假设底盘受到理想的运动命令的控制并可实现预期的结果,命令的格式为:x速度分量,y速度分量,角速度(theta)分量。 它需要在底盘上安装一个单线激光雷达。这个激光雷达用于构建地图和定位。 导航功能包
问题内容: 我可能在做一些非常愚蠢的事情,但是我很沮丧。 我有一个数据框,我想用超过零的值替换特定列中的值。我以为这是实现此目标的一种方式: 如果将通道复制到新的数据框中,这很简单: 这完全符合我的要求,但似乎无法与通道一起用作原始数据帧的一部分。 问题答案: 可以在0.20.0之前的熊猫版本上正常工作,但是由于pandas为0.20.0 ,因此不推荐使用,因此应避免使用它。而是可以使用或索引器。
导航条组件。 Usage 全部引入 import { NavigationBar } from 'beeshell'; 按需引入 import { NavigationBar } from 'beeshell/dist/components/NavigationBar'; Examples Code 详细 Code import { NavigationBar } from 'beeshell
我想根据条件更改我的开始导航片段。我的起始片段可以是片段1或片段2。有没有办法实现它?
jd.setNavigationBarTitle(OBJECT) 动态设置当前页面的标题。 OBJECT 参数说明: 参数 类型 必填 说明 title String 是 页面标题 success Function 否 接口调用成功的回调函数 fail Function 否 接口调用失败的回调函数 complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行) 示例代码