nodejs,export报错SyntaxError: Unexpected token export

最近作一个项目,写nodejs,又写vue,而后就有点混乱了。
当时想引入一个config文件,而后很天然的啪啪啪的敲了下面几行代码vue

//错误代码
export default const config = {
    static_img_url: 'http://localhost:7001/images/'
}

clipboard.png

啪啦啪啦,查了一下,说缘由是export default中的default是一种特殊的系统变量,export default的含义是把此命令后面的变量赋值给default这个特殊的系统变量,并把它导出到其余模块中使用。如此一来,export default const...或者export default var...等语句就是很是明显的错误了。node

好,改了一下以下:浏览器

//仍是错误代码
const config = {
    static_img_url: 'http://localhost:7001/images/'
}
 export default config

仍是报错:
clipboard.png函数

为何呢???发现掉坑了,搞混乱了。正确应该以下:url

//正确代码
const config = {
    static_img_url: 'http://localhost:7001/images/'
}
module.exports = config

其实就是Node和浏览器端所支持的模块规范不一样。spa

clipboard.png

  1. 关于exports和module.exports
    在一个node执行一个文件时,会给这个文件内生成一个 exports和module对象,而module有一个exports属性。
    exports = module.exports = {};
  2. 关于 export 和export default
    export与export default都可用于导出常量、函数、文件、模块等
    在一个文件或模块中,export、import能够有多个,export default仅有一个
    经过export方式导出,在导入时要加{ },export default则不须要
    export能直接导出变量表达式,export default不行。

参考引用:引用.net

相关文章
相关标签/搜索