Closed vnoder closed 5 years ago
my gulp file
const tsProject = ts.createProject(ts_config_path, { isolatedModules: true, preserveConstEnums: false, typescript: typescript });
my tsconfig.json
{ "compilerOptions": { "module": "commonjs", "target":"es3", "noImplicitAny": false, "removeComments": true, "preserveConstEnums": false, "sourceMap": false, }, "exclude": [ "node_modules", ] }
Code
const enum ITEM_TYPE { PRECIOUS = 1, SECRET, BADGE, SPIRIT, MAX_VALUE = SPIRIT, } var time = 0; if (time == ITEM_TYPE.BADGE) { console.log('right'); }
gulp-typescript output
var ITEM_TYPE; (function (ITEM_TYPE) { ITEM_TYPE[ITEM_TYPE["PRECIOUS"] = 1] = "PRECIOUS"; ITEM_TYPE[ITEM_TYPE["SECRET"] = 2] = "SECRET"; ITEM_TYPE[ITEM_TYPE["BADGE"] = 3] = "BADGE"; ITEM_TYPE[ITEM_TYPE["SPIRIT"] = 4] = "SPIRIT"; ITEM_TYPE[ITEM_TYPE["MAX_VALUE"] = 4] = "MAX_VALUE"; })(ITEM_TYPE || (ITEM_TYPE = {})); var time = 0; if (time == ITEM_TYPE.BADGE) { console.log('right'); }
expect output
var time = 0; if (time == 3 /* BADGE */) { console.log('right'); }
my typescript version is 3.0.3
The option preserveConstEnums cannot be used with isolatedModules on. You'll need to remove one of those settings.
my gulp file
my tsconfig.json
Code
gulp-typescript output
expect output