前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >export default和module.exports

export default和module.exports

作者头像
阿超
发布2022-08-17 21:38:59
6980
发布2022-08-17 21:38:59
举报
文章被收录于专栏:快乐阿超快乐阿超

我期望理解,但是也慢慢地感受到了一种责任,给予比接受伟大,去爱比被爱伟大。 ——海明威

我们在vue项目中创建两个js

image-20211123202050195
image-20211123202050195

util.js中写入

代码语言:javascript
复制
export default {
	ruben: 'ruben'
}

api.js中写入

代码语言:javascript
复制
module.exports = {
	vampire: 'vampire'
}

我们再来一个页面中使用两种方式引用

代码语言:javascript
复制
<script>
import util from '@/common/util.js';
import api from '@/common/api.js'
const util1 = require('@/common/util.js')
const api1 = require('@/common/api.js')
export default{
    created(){
        console.log("util.ruben: ",util.ruben);
		console.log("api.vampire: ",api.vampire);
		
		console.log("util1.ruben: ",util1.ruben);
		console.log("api1.vampire: ",api1.vampire);
    }
}
</script>

输出结果为:

image-20211123202538787
image-20211123202538787

我们可以看到使用require引入util.js中写的export default失败了

因为requireCommonJS中的语法,Node 应用由模块组成,采用 CommonJS 模块规范

CommonJS暴露模块采用的语法是module.exports

但是export default则是ES6中的新语法,它的效率要比CommonJS高,配套的是import

并且import是编译时执行,所以无法做到像require一样动态加载

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档