我正在使用webpack,babel和一些自定义加载程序(可以处理ES6):
(still es6)
file_es6.js --> my-loaders ----------> babel --> es5
现在我要使用打字稿加载器,这是问题开始的地方。
我认为ts-loader
只会进行类型检查并输出去除了类型的代码(我的加载程序可以处理的代码)。不幸的是,ts-loader
还会编译代码,我在他的步骤中不希望这样做:
(compiled junk)
file_es6.ts --> ts-loader --------------> my-loaders --> babel
是否有一种方法可以完全禁用编译,还是需要重写加载程序以使其能够处理打字稿语法?
我尝试通过设置"target": "ESNext"
( tsconfig.json )来解决此问题,但是它仍然会稍微更改代码(并在代码的开头添加“帮助器”):
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import React from 'react';
import { bindActionCreators } from 'redux';
import styled from 'styled-components';