我尝试为PrimeFlex (10.0.0)设置PrimeFaces (3.0.1)。我使用了PrimeFlex回购的dist文件夹中提供的css文件。此外,我还遵循了使用说明在PrimeFaces ShowCase中提供的内容,并在第一个测试驱动器中使用了几个柔性盒选项(如FlexBox橱窗中所示)。
因此,我检索了一个似乎不应用任何PrimeFlex类的页面。但是为什么呢?
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://xmlns.jcp.org/jsf/html"
xmlns:p="http://primefaces.org/ui">
<h:head>
<title>PrimeFlex in Action</title>
<h:outputStylesheet name="css/primeflex.css" />
</h:head>
<h:body>
Hello from PrimeFlex
<h2>Direction</h2>
<div class="p-d-flex p-flex-column p-flex-md-row">
<div class="p-mb-2 p-mr-2">Item 1</div>
<div class="p-mb-2 p-mr-2">Item 2</div>
<div class="p-mb-2 p-mr-2">Item 3</div>
</div>
<h2>Flex Container</h2>
<div class="p-d-flex">Flex Container</div>
<div class="p-d-inline-flex">Inline Flex Container</div>
<h2>Responsive</h2>
Row direction for larger screens and column for smaller.
<div class="p-d-flex p-flex-column p-flex-md-row card">
<div class="p-mb-2 p-mr-2">Item 1</div>
<div class="p-mb-2 p-mr-2">Item 2</div>
<div class="p-mb-2 p-mr-2">Item 3</div>
</div>
</h:body>
</html>css文件似乎被检索(查看的网络部分中显示的文件),但后来不知怎么没有为我的webapp找到/处理它。
此外,我还在web.xml中添加了FLEX激活,但没有任何效果:
<context-param>
<param-name>primefaces.FLEX</param-name>
<param-value>true</param-value>
</context-param>也试过使用全dist文件夹的PrimeFlex,也不改变一件事。同样,将h:outputStylesheet移动到不同的位置和部分。
发布于 2021-08-09 06:43:03
PrimeFaces 10、11和它们的展示仍然在使用PrimeFlex 2。示例中使用的类和文档是PrimeFlex 2的类。目前(2021年8月)的PrimeFlex版本是3。
如果您查看PrimeFlex 2至3迁移指南,您将注意到大多数类(如果不是全部)已经更改。例如,p-text-left变成了text-left。
我将使用PrimeFlex 3(因为无论如何在某一时刻都需要迁移),并在您从展示中复制示例时将迁移指南放在手边。
请注意,PrimeFaces 12将使用PrimeFlex 3而不是2。
如果您已经使用PrimeFlex 2构建了一个应用程序,那么要知道PrimeFlex 2到3迁移工具是可用的:
https://stackoverflow.com/questions/68702516
复制相似问题