有没有理由不使用c:如果超过渲染属性?当我开始学习jsf时,我从我阅读的教程中得到的一般氛围是jstl标签应该被遗忘。所以每当我使用jstl标签时,我觉得我做错了。
但对于c:if
,它在构建时执行,而rendered
jsf属性在渲染时执行(explanation here)。如果事后不再渲染,那么在组件树中添加一些内容对我来说似乎是一种浪费。最好不要使用c:if
,amiright?
例如,在我的所有网页上,如果用户是管理员,我会包含管理员菜单。如果在呈现页面时不显示菜单,我认为没有理由将菜单添加到树中。所以我只使用c:如果有的话。我在小部件上使用渲染时更方便,或者用于ajax类型的东西。