我可以在 Hyperstack 中制作功能组件吗?

Can I make a functional component in Hyperstack?

所有文档都提到使用 classes 创建组件。我可以制作功能组件以利用 React Hooks 吗?如果可以,怎么做?

澄清一下,我只能找到创建基于 class 的组件的文档,例如

class Example < HyperComponent
  render do
    DIV { "Example" }
  end
end

这相当于

class Example extends React.Component {
  render() {
    return <div>Example</div>
  }
}

我想重新创建以下内容:

() => {
  return <div>Example</div>
}
example = Example().as_node
# then you can do
example.render 
# or anything else you want with the example object
Another(example_component: example) # to pass it as a param

不,你不能。请参阅 https://github.com/hyperstack-org/hyperstack/issues/167 了解原因。基本答案:Hyperstack DSL已经解决了功能组件解决的主要问题,添加功能组件(有一些)的负面影响超过了任何优势。

请注意,您可以从 JS 库中导入功能组件。