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

JSX中的“导出默认值”有什么作用?

殳飞扬
2023-03-14
问题内容

我想问一下最后一句话的意思和作用(导出默认的HelloWorld;),但是我找不到关于它的任何教程。

// hello-world.jsx

import React from 'react';

class HelloWorld extends React.Component {
  render() {
    return <p>Hello, world!</p>;
  }
}

export default HelloWorld;

问题答案:

出口喜欢export default HelloWorld;和进口,比如import React from 'react'是一部分ES6模块系统。

模块是一个独立的单元,可以使用将资产暴露给其他模块export,并使用来从其他模块获取资产import

在您的代码中:

import React from 'react'; // get the React object from the react module

class HelloWorld extends React.Component {
  render() {
    return <p>Hello, world!</p>;
  }
}

export default HelloWorld; // expose the HelloWorld component to other modules

在ES6中,有两种导出:

命名出口 -例如,export function func() {}是名称为的命名出口func。可以使用导入命名模块。import { exportName } from 'module';.在这种情况下,导入的名称应与导出的名称相同。要在示例中导入func,您必须使用import { func } from 'module';。一个模块中可以有多个命名的导出。

默认export- 是使用简单import语句将从模块中导入的值import X from 'module'。X是将在本地分配给分配为包含值的变量的名称,而不必像原始输出那样命名。默认只能有一个导出。

一个模块可以包含命名的导出和默认的导出,并且可以使用将它们一起导入import defaultExport, { namedExport1, namedExport3, etc... } from 'module';



 类似资料:
  • 我想问最后一句是什么意思和做(导出默认的HelloWorld;),但我找不到关于它的任何教程。

  • 问题内容: 档案:SafeString.js 我从未见过。是否有任何等效的东西更容易理解? 问题答案: 它是ES6模块系统的一部分,该文档中还有一个有用的示例: 如果模块定义了默认导出: 那么您可以通过省略花括号来导入默认导出: 更新: 自2015年6月,该模块系统中定义§15.2和在特定语法中定义§15.2.3ECMAScript的2015规范的。

  • 文件:safeString.js 我以前从未见过。对于,是否有更容易理解的等效内容?

  • 我有一个VUE2项目,我编写了一个简单的函数来翻译日期中的月份,我想将它导入到我的一个组件中,但是我得到了一个错误: 在“@/utils/date-translation”中找不到导出“default”(导入为“translate date”) src文件夹中的相对文件路径是正确的,我导出的函数如下所示: 然后我将其导入到组件中,如下所示: 我做错了什么?

  • 在的末尾,我们将 将声明为的默认导出。 然后当我们将这个文件导入到中时,我们简单地将 也以这种方式导入。 但是,中没有包含导出默认寄存器ServiceWorker语句。 我有两个问题- 这是如何工作,而没有一个语句中的? 而且还 为什么registerServiceWorker从一开始就没有大写?如本SO答案所述,它是内置组件吗? 以下是,供参考:

  • Kubernetes的pods(部署)活跃性和就绪性问题可以用这个初始延迟来配置----这意味着问题将在容器启动后的这多次发送之后开始。如果没有指定,默认值是多少?我好像找不到了。periodSeconds的默认值记录为10秒。 谢谢