什么是和谐,什么是和谐出口?

时间:2018-10-18 10:03:40

标签: javascript webpack ecmascript-harmony

这个和谐出口是什么?其实,和谐是什么?

背景

当我使用Webpack打包内容并查看分发源时,它始终包含此块。

// define getter function for harmony exports
__webpack_require__.d = function(exports, name, getter) {
    if(!__webpack_require__.o(exports, name)) {
        Object.defineProperty(exports, name, { enumerable: true, get: getter });
    }
};

我用Google搜索并发现了this page,但我对此一无所知。截至今天,该页面的内容如下:

enter image description here

我在Google上搜索了更多,found a similar question询问什么是和谐,但询问者从未用太多的话问过它,唯一的答案并没有告诉你什么是和谐。

问题

那么,在上帝自己的绿色地球上,和谐是什么?那么什么是和谐出口?

在阅读“ ecmascript-harmony”的堆栈溢出标签说明时,我怀疑它指的是ES6模块导出,但我也认为不是,因为此后Webpack源分发文件立即包含一个if构造检查正在处理的entry文件是否使用export语句公开ES 6模块。

// define __esModule on exports
__webpack_require__.r = function(exports) {
    if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
        Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
    }
    Object.defineProperty(exports, '__esModule', { value: true });
};

那么,这可能意味着除了ES 6模块出口以外的其他东西?我怀疑这是在Node中实现的 Common JS 样式导出吗?

1 个答案:

答案 0 :(得分:2)

  

那么,在上帝自己的绿色地球上,和谐是什么?

After ES4 was abandoned, plans were scaled back in a new project which had the code name Harmony.

这最终演变为ES6。

  

那么什么是和谐出口?

ES6描述其最终(?)版本的导出系统。