webpack ts-loader - проверка типов без компиляции / переноса? - PullRequest
0 голосов
/ 13 февраля 2020

Я использую 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';
...