gpt4 book ai didi

smalltalk - 渲染前后的海边 Hook

转载 作者:行者123 更新时间:2023-12-03 21:12:44 25 4
gpt4 key购买 nike

我想看看 Seaside 中是否有一个在渲染之前调用的钩子(Hook),以及一个在渲染之后调用的钩子(Hook)。碰巧我想在屏幕上显示一个通知,我希望渲染完成后,修改这个组件,以便下次渲染完成时不再显示。
谢谢并恭祝安康!

最佳答案

Seaside 没有“钩子(Hook)”,而是 component decorations你可以包裹一个组件来改变它们的行为。如果你包装你的根组件,你可以实现一个装饰,在整个组件树上渲染之前和之后调用钩子(Hook)。
但是,在渲染时更改组件的状态会破坏 Seaside 为您提供的状态回溯行为。状态更改应该发生在操作回调中。因此,没有“渲染后”阶段可以更改组件的状态(嗯,可以,但会导致 subtle problems )。相反,请使用操作阶段(即回调)来更改组件的状态,以便下次调用渲染阶段时,不会显示您的组件。
我假设当您说“下一次渲染完成”时,这意味着在用户单击链接或执行其他操作之后。这意味着您可以在执行操作回调时更改状态并安排渲染树的状态,以便不再显示相关组件。如果您这样做,用户将在单击浏览器中的后退按钮时再次看到该组件。

关于smalltalk - 渲染前后的海边 Hook ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62684156/

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