QAQ_ing 2022-05-09 22:14 采纳率: 33.3%
浏览 23
已结题

为什么export default 相比 export 在拿的时候层级多

背景:
1)api 分成 4份存

//tradeMark模块的API
// 引入axios
import request from "@/utils/request";

export const reqTrademark = (page, limit) => {
  return request({
    url: `/admin/product/baseTrademark/${page}/${limit}`,
    method: "post",
  });
};
......

2)统一暴露

import * as trademark from "./product/tradeMark";
import * as attr from "./product/attr";
import * as sku from "./product/sku";
import * as spu from "./product/tradeMark";
//统一对外暴露
export default { trademark, attr, sku, spu };

3)挂载到Vue原型上

//main.js中引入API,挂载到Vue原型上
import * as API from "@/api";
Vue.prototype.$API = API;
new Vue({
  el: "#app",
  router,
  store,
  render: (h) => h(App),
});

4)组件中用

export default {
  name: "TradeMark",
  mounted() {
    console.log(this.$API);
  },
};

结果:

img

而 export 就不会深一层

import * as trademark from "./product/tradeMark";
import * as attr from "./product/attr";
import * as sku from "./product/sku";
import * as spu from "./product/tradeMark";
//统一对外暴露
export { trademark, attr, sku, spu };

结果:

img

是我哪里写错了吗!

  • 写回答

1条回答 默认 最新

  • 南城FE 2022-05-10 09:41
    关注

    export default 这已经很明显说明了嘛,这里就是会包裹一层 default 对象的,如果你不需要这种方式,就直接用export导出。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月28日
  • 创建了问题 5月9日

悬赏问题

  • ¥15 关于#hadoop#的问题,请各位专家解答!
  • ¥15 如何批量抓取网站信息
  • ¥15 Spring Boot离线人脸识别
  • ¥15 NRF24L01能发送但是不能接收
  • ¥15 想问一下这种情况怎么解决呢(关键词-file)
  • ¥15 python Flassk 模块部署 服务器时报错
  • ¥15 Opencv(C++)异常
  • ¥15 VScode上配置C语言环境
  • ¥15 汇编语言没有主程序吗?
  • ¥15 这个函数为什么会爆内存