export和export defalut同时使用
时间: 2023-11-30 16:55:13 浏览: 70
浅谈es6中export和export default的作用及区别
在 JavaScript 中,`export` 和 `export default` 用于导出模块中的内容,使其可以在其他文件中使用。它们可以同时使用,但是使用时需要注意一些细节。
当使用 `export` 时,可以导出多个变量、函数或类,例如:
```
// module.js
export const name = 'John';
export function add(a, b) {
return a + b;
}
export class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
}
```
在另一个文件中,可以使用以下语法来导入这些变量、函数或类:
```
// app.js
import { name, add, Person } from './module';
console.log(name); // 'John'
console.log(add(1, 2)); // 3
const person = new Person('Bob', 30);
console.log(person.name, person.age); // 'Bob', 30
```
当使用 `export default` 时,只能导出一个默认的变量、函数或类,例如:
```
// module.js
export default function add(a, b) {
return a + b;
}
```
在另一个文件中,可以使用以下语法来导入默认的变量、函数或类:
```
// app.js
import add from './module';
console.log(add(1, 2)); // 3
```
如果要同时使用 `export` 和 `export default`,可以将 `export default` 放在最后面,例如:
```
// module.js
export const name = 'John';
export function add(a, b) {
return a + b;
}
export class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
}
export default function subtract(a, b) {
return a - b;
}
```
在另一个文件中,可以使用以下语法来导入这些变量、函数或类以及默认的变量、函数或类:
```
// app.js
import { name, add, Person } from './module';
import subtract from './module';
console.log(name); // 'John'
console.log(add(1, 2)); // 3
const person = new Person('Bob', 30);
console.log(person.name, person.age); // 'Bob', 30
console.log(subtract(2, 1)); // 1
```
阅读全文