Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 导出默认值/const/class扩展的区别是什么?_Javascript_Reactjs_Gatsby - Fatal编程技术网

Javascript 导出默认值/const/class扩展的区别是什么?

Javascript 导出默认值/const/class扩展的区别是什么?,javascript,reactjs,gatsby,Javascript,Reactjs,Gatsby,在他们的网站上有一个非常好的盖茨比教程。一切正常,但我有一个问题,以了解在初学者模板的差异 starte模板中不同的react组件用法有什么区别?为什么他们在hello world示例中使用export default…,在默认启动程序中使用const IndesPage=()0>(),在博客示例中使用class BlogIndes extends React.component 盖茨比初学者你好世界 export default()=>Hello world! 盖茨比起动机默认值 const

在他们的网站上有一个非常好的盖茨比教程。一切正常,但我有一个问题,以了解在初学者模板的差异

starte模板中不同的react组件用法有什么区别?为什么他们在hello world示例中使用
export default…
,在默认启动程序中使用
const IndesPage=()0>(
),在博客示例中使用
class BlogIndes extends React.component


盖茨比初学者你好世界

export default()=>Hello world!

盖茨比起动机默认值

const IndexPage = () => (
  ...
)

export default IndexPage
盖茨比入门博客

class BlogIndex extends React.Component {
  render() {
    ...

    return (
      ...
    )
  }
}

export default BlogIndex

gatsby starter hello worldgatsby starter default是无状态组件,引用React文档:

这些组件不能保留内部状态,不能有支持实例,也不能有组件生命周期方法。它们是其输入的纯函数转换,没有样板文件。但是,您仍然可以通过将.propTypes和.defaultProps设置为函数的属性来指定它们,就像在ES上设置它们一样6班

盖茨比入门博客是一个有状态的组件 它有一个状态,生命周期挂钩,一个类组件应该在你需要处理状态的时候使用


希望这有帮助

这些组件的可能副本都是React组件,前两个是功能组件,最后一个是类组件。and和gatsby starter hello world的可能副本也是无状态组件。那么gatsby starter hello world和gatsby starter default之间的区别是什么?我必须何时使用一个接一个?还有另一个问题:我在盖茨比入门博客()中找不到这种状态,也许这就是我想知道的原因。