Seaside 中嵌套#call: 的数量是否有限制?
Is there a limit to the number of nested #call:'s in Seaside?
我正在开发一个 Seaside 应用程序,我怀疑我已经到了无法再 #call:
另一个组件的地步。
这不是我的 WAComponents 的问题,因为我尝试了其他以 #call:
结尾的消息,例如 #confirm:
.
我的应用程序中有 4 个嵌套的 #call:
(我知道,我知道......但我不是在寻找设计建议,只是在寻找答案:))。 5号只是重新加载页面,调用的组件一直没有出现。
我查了下文档,没有关于这个的,调试对我来说真的很困难,因为我不熟悉Seaside的内部代码。
这是 Pharo 6.1 下的 Seaside 3.2。
谢谢!
嵌套的 #call:
没有限制,正如 Johan 的评论中正确指出的那样。
在这种特殊情况下,#call:
的 "null" 行为(即只是重新加载页面)是由于父 [=] 的 #children
方法中的一个错误13=]。这里发生的事情是:
- 组件 A
#render:
编辑了组件 B,但组件 A的 #children:
有问题
- 组件B想要
#call:
组件C
#call:
没用,只是重新加载了页面
正如 Seaside documentation 所述,每个呈现另一个 WAComponent
的 WAComponent
必须 重新定义 #children
子组件。很容易忘记执行此操作,因为大多数时候它不会成为阻碍。直到你发现自己陷入这种情况。
我正在开发一个 Seaside 应用程序,我怀疑我已经到了无法再 #call:
另一个组件的地步。
这不是我的 WAComponents 的问题,因为我尝试了其他以 #call:
结尾的消息,例如 #confirm:
.
我的应用程序中有 4 个嵌套的 #call:
(我知道,我知道......但我不是在寻找设计建议,只是在寻找答案:))。 5号只是重新加载页面,调用的组件一直没有出现。
我查了下文档,没有关于这个的,调试对我来说真的很困难,因为我不熟悉Seaside的内部代码。
这是 Pharo 6.1 下的 Seaside 3.2。
谢谢!
嵌套的 #call:
没有限制,正如 Johan 的评论中正确指出的那样。
在这种特殊情况下,#call:
的 "null" 行为(即只是重新加载页面)是由于父 [=] 的 #children
方法中的一个错误13=]。这里发生的事情是:
- 组件 A
#render:
编辑了组件 B,但组件 A的#children:
有问题 - 组件B想要
#call:
组件C #call:
没用,只是重新加载了页面
正如 Seaside documentation 所述,每个呈现另一个 WAComponent
的 WAComponent
必须 重新定义 #children
子组件。很容易忘记执行此操作,因为大多数时候它不会成为阻碍。直到你发现自己陷入这种情况。