How to use export default in es6

WBOY
Release: 2022-08-30 17:01:31
Original
1229 people have browsed it

In es6, "export default" is used to export real-time bound functions, objects or primitive values ​​from the module. A file can only write an "export default" at the end to specify the default output for the module. Syntax is "export default function () {...}".

How to use export default in es6

The operating environment of this tutorial: Windows 10 system, ECMAScript version 6.0, Dell G3 computer.

How to use export default in es6

The export statement is used to export real-time bound functions, objects or primitive values ​​from the module so that other programs can import {foo, bar} from ' ./util/index' reference

There are two ways to export exports:

Named export export function FunctionName(){...} (each module contains any number)

Default export export default expression; (each module contains one)

export

You can write multiple exports in one file

Export in file a.js

export let name1 = '张三'; // 或者使用 var, const
export function FunctionName(){...}
export class ClassName {...}
Copy after login

Import in file b.js

import {name1,FunctionName,ClassName} from '../a.js';
Copy after login

Note that the following writing method will report an error:

// 报错
export 1;
// 报错
var m = 1;
export m;
// 报错
function f() {}
export f;
Copy after login

export default

A file can only have one export at the end default

Export externally in file a.js

const str = "export default的内容";
function FunctionName(){...}
class ClassName {...}
export default {str,FunctionName,ClassName}
Copy after login

In file b Import in .js

import name from '../a.js';
// 使用
console.log(name.str)
name.FunctionName();
Copy after login

The difference between export and export default

1. Both export and export default can be used to export constants, functions, files, Modules, etc.

2. In a file or module, there can be multiple exports. The export default only has one at the end of the file.

3. When exporting through export, add { }, export default is not required, and can be given any name

Detailed introduction

We know that export default{} is indispensable when learning VUE. But its meaning must be understood.

export default{}This is used when reusing components. Suppose we write a single page component file A and need to use it in another file B, then we need to use the ES6 import/export syntax to define the output interface export in file A and introduce import in file B. Use the imported components so that you can reuse component A to match file B to generate html pages.

When using the import command, the user needs to know the name of the variable or function to be loaded, otherwise it cannot be loaded. However, users definitely want to get started quickly, and may not be willing to read the documentation to understand what attributes and methods the module has. In order to provide convenience to users and allow them to load modules without reading the documentation, the export default command is used to specify the default output for the module.

1. Basic usage

//export-default.js 这是一个模块文件export-default.js,它的默认输出是一个函数
export default function () {
  console.log('foo');
}
Copy after login
//import-default.js
import customName from './export-default';
customName();  //'foo'
//这是的import命令,可以用任意名称指向export-default.js输出的方法,这时就不需要知道原模块输出的函数名。
// 需要注意的是,这时import命令后面,不使用大括号。
Copy after login

When other modules load the anonymous module, the import command can specify any name for the anonymous function.

2. The export default command is used before non-anonymous functions

// export-default.js
export default function foo() {
  console.log('foo');
}
 
// 或者写成
 
function foo() {
  console.log('foo');
}
 
export default foo;
//上面代码中,foo函数的函数名foo,在模块外部是无效的。加载的时候,视同匿名函数加载。
Copy after login

[Related recommendations: javascript video tutorial, web front-end]

The above is the detailed content of How to use export default in es6. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
es6
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template