关于RN组件的导出export和export default

一般我们在定义了一个组件之后,为了复用,需要将它导出以提供给其他页面使用。

组件导出的关键字是

exprot default

没有加default时,例如:

export class Template{}

当然,你可以在单个js文件里声明多个组件,例如Templates.js

export class Template{}
export class AnotherTemplate{}

这样在其他文件引用时,需要使用{}符号且组件名称必修和class名称一样,像这样子:

import {Template,AnotherTemplate} from './components/Templates';

而加default时,例如:

export default class Template{}

然后在其他文件引用,像这样子:

import Template from './components/Templates';

你也可以为这个组件另起一个别名,像这样子:

import TheTemplate from './components/Templates';

但是每个文件里只能有个default组件,可以包含其他非default组件:

export default class Template{}
export class AnotherTemplate{}

然后引用的时候,如下:

import Template,{AnotherTemplate} from './components/Templates';

总结

  • 有default和没有default的区别在于:有default在引用时可以自定义名称,而没有default时需要使用{}括起来且名称必修和class名称一致
  • 每个文件里只能有一个default组件,但可以有多个非default组件

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...