export default和module.exports

简介: export default和module.exports

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

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

util.js中写入

export default {
  ruben: 'ruben'
}

api.js中写入

module.exports = {
  vampire: 'vampire'
}

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

<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>

输出结果为:

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

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

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

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

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

相关文章
|
6月前
|
JavaScript 前端开发
ES6之Module:export、import
ES6之Module:export、import
|
JavaScript 小程序 前端开发
详解module.exports与exports,export与export default,import 与require
详解module.exports与exports,export与export default,import 与require
57 0
|
Web App开发 Dart JavaScript
剖析require、import、export、exports、module.exports以及export default 的基本用法
剖析require、import、export、exports、module.exports以及export default 的基本用法
导出与导入(require,import,module.exports,exports,export,export default)
导出与导入(require,import,module.exports,exports,export,export default)
65 0
|
JavaScript C++
Module ‘“xx.vue“‘ has no default export.Vetur(1192)
Module ‘“xx.vue“‘ has no default export.Vetur(1192)
1578 0
|
前端开发
Module理解及使用
Module理解及使用
128 0
|
Python
ModuleNotFoundError: No module named ‘pyexpat‘
ModuleNotFoundError: No module named ‘pyexpat‘
225 0
|
JavaScript 小程序 前端开发
(区别、详解、使用)module.exports与exports,export与export default,import 与require
变量的导出涉及到四个关键字module.exports与exports,export与export default, 其中module.exports与exports是符合CommonJS模块规范的。
393 0
(区别、详解、使用)module.exports与exports,export与export default,import 与require
|
JavaScript 前端开发 开发者
module.exports 介绍|学习笔记
快速学习 module.exports 介绍