gpt4 book ai didi

java - 默认情况下将 Component.ouputMarkupId 设置为 false 背后的设计决定是什么?

转载 作者:行者123 更新时间:2023-11-30 07:37:51 25 4
gpt4 key购买 nike

在 Apache Wicket 网络框架中,每个组件默认从 getOuputMarkupId() 返回 false

我很好奇原因。背后的设计决策。

我正在使用 ajax 组件,我需要刷新页面上的其他一些组件。为此,我必须在涉及 ajax 页面刷新的每个组件上设置 setOutputMarkupId(true)。因为我大量使用 ajax,所以我必须经常这样做。而且不是很方便。除了“最好的代码就是根本没有代码”。

我可以这样处理:

class MyApp extends Application {

@Override
public init() {

Application.addComponentInstantiationListener(
new IComponentInstantiationListener() {

public void onInstantiation(Component component) {
component.setOutputMarkupId(true);
component.setOutputMarkupPlaceholderTag(true);
}

}
);

但是有什么取舍吗?我想到的唯一权衡是:

  • 呈现的页面 (html) 更大
  • 有一些渲染开销(即当 id 属性被写入 html 时)

但恕我直言,它们的占地面积很小。

最佳答案

它无法从 .html 中获取 ID(但在 1.5 中可以)。所以这将覆盖那些您可能用于 css/js 等的 id

关于java - 默认情况下将 Component.ouputMarkupId 设置为 false 背后的设计决定是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2343255/

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