--- id: 587d7b8c367417b2b2512b56 title: Use export to Reuse a Code Block challengeType: 1 videoUrl: '' localeTitle: 使用export重用代码块 --- ## Description
在之前的挑战中,您了解了import以及如何利用它从大型文件导入少量代码。但是,为了使其工作,我们必须使用import一个语句,称为导出 。当我们想要一些代码 - 一个函数或一个变量 - 可以在另一个文件中使用时,我们必须将其导出才能将其导入另一个文件。与import一样, export是非浏览器功能。以下是我们称为命名导出的内容 。有了这个,我们可以使用您在上一课中学到的import语法将我们导出的任何代码导入到另一个文件中。这是一个例子:
const capitalizeString =(string)=> {
return string.charAt(0).toUpperCase()+ string.slice(1);
}
export {capitalizeString} //如何导出函数。
export const foo =“bar”; //如何导出变量
或者,如果您想将所有export语句压缩成一行,则可以采用以下方法:
const capitalizeString =(string)=> {
return string.charAt(0).toUpperCase()+ string.slice(1);
}
const foo =“bar”;
export {capitalizeString,foo}
两种方法都是完全可以接受的。
## Instructions
下面是我想让其他文件使用的两个变量。利用我演示export的第一种方式,导出两个变量。
## Tests
```yml tests: - text: foo被导出了。 testString: 'getUserInput => assert(getUserInput("index").match(/export\s+const\s+foo\s*=\s*"bar"/g), "foo is exported.");' - text: bar出口。 testString: 'getUserInput => assert(getUserInput("index").match(/export\s+const\s+bar\s*=\s*"foo"/g), "bar is exported.");' ```
## Challenge Seed
```js "use strict"; const foo = "bar"; const bar = "foo"; ```
### Before Test
```js window.exports = function(){}; ```
## Solution
```js // solution required ```