当前位置: 首页 > 面试题库 >

在render()中反应函数

计向晨
2023-03-14
问题内容

是否有将功能放置在react组件中的偏好?我仍在学习反应,因此只想找出最佳做法。

class Content extends React.Component {
    /// Whats the difference between putting functions here such as 
   Hello(){

   }

  render(){
      /// or here
   Hello(){

   }


    return()(
      <div>blah blah </div>

    )

    }


  }

问题答案:

每次渲染都会在render方法中创建一个函数,这会对性能造成轻微的影响。如果将它们放入渲染中也很麻烦,这是一个更大的原因,您不必滚动渲染中的代码即可查看html输出。始终将它们放在课堂上。

对于无状态组件,最好将函数保留在main函数之外,而传递props,否则该函数也会在每个渲染器中创建。我还没有测试性能,所以我不知道这是否是微优化,但值得注意。

例:

const MyStatelessComponent = ({randomProp}) => (
    render() {
        doSomething(randomProp);

        return <div />
    }
);

doSomething = (randomProp) => {
    //Do something here
}


 类似资料:
  • 问题内容: 我想知道它是否是反模式,或者是否以某种方式影响组件,例如: 问题答案: 我认为一般来说,人们避免在render中定义函数,但是根据这篇博客文章,这并不是一个坏习惯。该博客文章重点介绍了在render中定义的内联事件处理函数,但我想它适用于render中定义的任何函数。在渲染器中定义函数意味着每次调用渲染器时都要重新定义它们的开销,但这可能不会因组件而导致明显的性能差异。 对于您给出的特

  • 基础 Vue 推荐使用在绝大多数情况下使用 template 来创建你的 HTML。然而在一些场景中,你真的需要 JavaScript 的完全编程的能力,这就是 render 函数,它比 template 更接近编译器。 <h1> <a name="hello-world" href="#hello-world"> Hello world! </a> </h1> 在 HTML 层

  • 在我的普通React类组件中,在返回条件html呈现之前,我在render()方法中做了一些检查。现在,我正在使用一个react函数组件,它显然没有render()方法。。。我如何在这里进行条件检查?就在普通函数中,然后从这些函数返回html代码? e、 g类组件: 在功能组件中?:

  • 问题内容: 这是我之前的问题的后续工作,但是如果我在其中的映射如何在React的render()方法中调用函数。 示例(此代码在extended的类内): 无论我尝试什么,我总是最终得到“ this.getItemInfo()不是一个函数”。 我在函数内部进行了on操作,实际上是在引用Window对象,但是我似乎找不到改变它的方法。 我累了: 定义为函数getItemInfo(){..} 作为第二

  • 我正在努力学习reactjs,我有一些不确定性。我参考了react文档和一些其他教程,我看到函数是在渲染函数和类中编写的。我们应该在React的render函数中做什么? 第1路 第二路 谢了。

  • 问题内容: 我有一个通知组件,并且有一个超时设置。超时后我打电话。 我想做的是,如果已经超时,我什么都不渲染: 问题是: return(); //这里有一些语法错误 问题答案: 是的,您可以,但是如果您不想从组件中得到任何东西,则可以直接返回而不是空白,如下所示: 另一个要点是,在JSX内部,如果您有条件地渲染元素,则​​在情况下,您可以返回这些值中的任何一个。根据 DOC : 是 有效的孩子 ,