Microsoft/TypeScript

Invalid output emited as the result of javascript file compilation: amd, default export, jsdoc

Open

#35,797 创建于 2019年12月20日

在 GitHub 查看
 (0 评论) (0 反应) (0 负责人)TypeScript (6,726 fork)batch import
BugDomain: JS EmitHelp Wanted

仓库指标

Star
 (48,455 star)
PR 合并指标
 (平均合并 6天 17小时) (30 天内合并 9 个 PR)

描述

TypeScript Version: 3.7.3

Search Terms: compile javascript default function

Code ./index.js

/**
 * @typedef {Does_Not_Matter} <does.not.matter> does_not_matter
 */
export default function MyClass(){
}
MyClass.data = [];

Expected result: ./out/index.js

define(["require", "exports"], function (require, exports) {
    "use strict";
    exports.__esModule = true;
    /**
     * @typedef {Does_Not_Matter} <does.not.matter> does_not_matter
     */
    function MyClass() {
    }
    exports["default"] = MyClass;
    MyClass.data = [];
});

Actual result: ./out/index.js

define(["require", "exports"], function (require, exports) {
    "use strict";
    exports.__esModule = true;
    /**
     * @typedef {Does_Not_Matter} <does.not.matter> does_not_matter
     */
    function MyClass() {
    }
    exports["default"] = MyClass;
    exports.MyClass.data = [];
//  ^^^^^^^ HERE IS THE ERROR! 
//  expecting: MyClass.data = [];
});

Compiler options:

{ 
  "compilerOptions": {
    "outDir": "./out",
    "allowJs": true,
    "checkJs": false,
    "module": "amd",
  },
  "include": [
    "index.js"
  ]
}

贡献者指南