export 和 export default 区别

一个js文件就是一个模块。

exprot 分别暴露:

如果想单独暴露出该 js 文件(模块)的某些变量,则可以使用 export 进行分别暴露。

// 获取floor数据
export const reqGetFloorList = ()=>{
    return mockRequest({
        url:'/floor',
        method:'GET',
    })
}

// 获取搜索模块数据  地址:/api/list  方式 post  
// 当前接口给服务器传递的参数 params 至少是一个空对象
export const reqGetSearchInfo = (params)=>{
    return requests({
        url:'/list',
        method:'POST',
        data:params
    })
}

// 获取验证码   /api/user/passport/sendCode/{phone}
export const reqGetCode = (phone)=>{
    return requests({
        url:`/user/passport/sendCode/${phone}`,
        method:'GET'
    })
}

也可以在末尾进行集中暴露:

export {reqGetFloorList, reqGetSearchInfo, reqGetCode};

通过export暴露出来的内容的引入方式:

import命令接受一对大括号,里面指定要从其他模块导入的变量名。大括号里面的变量名,必须与被导入模块(profile.js)对外接口的名称相同。

如果想为输入的变量重新取一个名字,import命令要使用as关键字,将输入的变量重命名。

import { reqGetCode, reqRegister, reqLogin,reqUserInfo,reqLogout } from '@/api/index'

// 取别名

import { lastName as surname } from './profile.js';

export default 默认暴露:

其他模块加载通过 export default 暴露的模块时,import命令可以为该匿名函数指定任意名字。

本质上,export default就是输出一个叫做default的变量或方法,然后系统允许你为它取任意名字。

正是因为export default命令其实只是输出一个叫做default的变量,所以它后面不能跟变量声明语句。

总结:

export命令对外接口是有名称的且import命令从模块导入的变量名与被导入模块对外接口的名称相同,而export default命令对外输出的变量名可以是任意的,这时import命令后面,不使用大括号。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值