Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Урезаный трансформер ES 2015 модулей в AMD модули (https://javascript.ru/forum/project/61090-urezanyjj-transformer-es-2015-modulejj-v-amd-moduli.html)

FINoM 03.02.2016 17:46

Урезаный трансформер ES 2015 модулей в AMD модули
 
Вон что сделал за пару часов пару дней назад:
https://github.com/finom/babel-plugi...les-simple-amd

Конвертирует такой код:

import x from '/path/to/x';
import y from '/path/to/y';
doSomething();
export default x + y;

В такой:

define(['/path/to/x', '/path/to/y'], function (x, y) {
  doSomething();
  return x + y;
});


Вместо такого:

define(['exports', '/path/to/x', '/path/to/y'], function (exports, _x, _y) {
  Object.defineProperty(exports, "__esModule", {
    value: true
  });

  var _x2 = _interopRequireDefault(_x);

  var _y2 = _interopRequireDefault(_y);

  function _interopRequireDefault(obj) {
    return obj && obj.__esModule ? obj : {
      'default': obj
    };
  }

  doSomething();
  exports.default = _x2.default + _y2.default;
});


Поддерживается только такой синтаксис:

import VARIABLE from 'PATH'
import 'PATH'


Это просто синтаксический сахар над AMD модулями, цели следовать спеке - нет.

yazonnile 03.02.2016 18:18

красиво. Спасибо :)

FINoM 20.02.2016 21:23

А вот и трансформер для CommonJS: https://github.com/finom/babel-plugi...imple-commonjs


Часовой пояс GMT +3, время: 05:06.