【发布时间】:2019-08-28 15:00:25
【问题描述】:
我刚刚遇到了一个 React 代码,我不确定这是否是一个好方法。这是该代码的示例实现。
class App extends React.Component {
renderMessage = () => {
function getMessage() {
return "Hello"
}
function getName() {
return "Vijay"
}
return (
<h1>{getMessage()} {getName()} !!!</h1>
)
}
render() {
return (
<div>
{this.renderMessage()}
</div>
)
}
}
这里我们在渲染中调用了一个函数renderMessage。在renderMessage 中有两个内部函数,它们仅在renderMessage 内部调用。我现在的问题是:-
- 这是一个好方法吗?它不会在每次
render调用时重新声明方法getName和getMessage。 - 如果我创建
getName和getMessage类方法并在renderMessage中调用它们,会不会是一种改进?
谢谢:)
【问题讨论】:
-
看起来很奇怪 - 我更喜欢使用标准的类方法,除非有理由不这样做
-
除非类足够大以至于您想将
getMessage和getNameonly 封装在renderMessage中,这就是您想要做的吗?这个目标是有意义的 -
这里的目标是这些方法只在
renderMessage内部使用是否公平,因为除了renderMessage之外没有人会使用它们。
标签: javascript reactjs redux