欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ES6学习——模块化:import和export

程序员文章站 2023-12-22 19:47:40
...

export default 导出

import A from ‘…/…/…’ 导入

1、export default 向外暴露的成员,可以使用任意变量来接收

2、在一个模块中,export default 只允许向外暴露一次

3、在一个模块中,可以同时使用export default 和export 向外暴露成员

4、使用export向外暴露的成员,只能使用{ }的形式来接收,这种形式,叫做【按需导出】

5、export可以向外暴露多个成员,同时,如果某些成员,在import导入时,不需要,可以不在{ }中定义

6、使用export导出的成员,必须严格按照导出时候的名称,来使用{ }按需接收

7、使用export导出的成员,如果想换个变量名称接收,可以使用as来起别名

导出 对象

/** getAuth.js **/
export default {
    async getUserInfo (e) {
        let dataParam = e.detail;
        return new Promise((resolve,reject) => {
            if(dataParam.errMsg == 'getUserInfo:ok'){
                // 同意授权
                let ivData = {
                    iv: dataParam.iv,
                    encryptedData: dataParam.encryptedData
                };     
                authPromise.getToken(ivData);
                wx.showToast({ title:'授权成功' });
                resolve();
            } else {
                // 拒绝授权
                wx.showToast({ title: '授权失败!',icon:'none' });
                reject();
            }
        });
    },
}

/** index.js **/
import getAuth from '../getAuth';
getAuth.getUserInfo(e).then(() => {
......
  }).catch(() => {
......
  });
  

导出 匿名函数

export default function () { console.log('foo'); }
  // 这是的import命令,可以用任意名称指向export-default.js输出的方法
  //需要注意的是,这时import命令后面,不使用大括号。
  import customName from './export-default'; 
	customName(); //'foo'

导出 非匿名函数

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

export加default和不加的区别

//第一组
export default function func1(){
	//...
}
import func1 from '../func'

//第二组
export function func2(){
	//...
}
import {func2} from '../func

export default 可以输出 类

//MyClass.js
export default class{...}

//main.js
import MyClass from 'MyClass';
let o = new MyClass();

使用export导出的成员,如果想换个变量名称接收,可以使用as来起别名

import person, {title, content as content1} from './test.js'

相关标签: es6

上一篇:

下一篇: