【发布时间】:2018-03-10 21:31:07
【问题描述】:
我正在尝试使用 binding.scala 制作可组合的组件。我希望能够拥有一个组件,该组件可用于包装传入的其他组件。例如:一个卡片组件,它围绕任何其他任意 @dom 函数包装一个样式框。我尝试了几种方法,但意识到由于 @dom 宏,类型似乎比看起来更复杂。
下面,我提供了一种不起作用的方法,但显示了意图。我希望能够调用 wrapperMarkup 并将其传递给 contentMarkup。
我发现了许多将数据传递到@dom 函数并呈现的示例,但没有显示如何传递另一个@dom 函数或@dom 调用结果的示例。
有没有什么好的方法可以做到这一点?
type MarkupFun = ()=>Binding[Div]
@dom
def contentMarkup():Binding[Div] = {
<div>card Content</div>
}
@dom
def wrapperMarkup(f:MarkupFun):Binding[Div] = {
//<div>card wrapper {f.bind}</div> // What I want that doesn't work
<div>card wrapper {contentMarkup().bind}</div> // works but not what I want.
}
【问题讨论】:
标签: binding.scala