У меня успешно работает ReactJS.Net, в том числе с использованием синтаксиса ES6.
Я использую конвейер преобразования Jsx по умолчанию, который использует Babel. Если посмотреть на источник в браузере, я вижу, что код ES6 был преобразован в ES5 с помощью ReactJS.Net
Мне не удалось заставить модули работать.
Браузер дает мне 2 ошибки:
Uncaught ReferenceError: exports is not defined
Uncaught ReferenceError: require is not defined
Как использовать модули ES6?
Простейший пример:
Lib.js
export function square(x) {
return x * x;
}
UserOfLib.js
import { square } from 'Lib';
console.log(square(11));
Возвращается к этому (смотря на источник браузера):
Lib:
// @hash v3-AD133907ABEC5D32B3768A3AF2301FC9
// Automatically generated by ReactJS.NET. Do not edit, your changes will be overridden.
// Version: 2.0.1 (build 5e9476a)
// Generated at: 08-Nov-15 6:40:26 AM
///////////////////////////////////////////////////////////////////////////////
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.square = square;
function square(x) {
return x * x;
}
UserOfLib:
// @hash v3-812C209AFED25C2B4507E5769B0D899B
// Automatically generated by ReactJS.NET. Do not edit, your changes will be overridden.
// Version: 2.0.1 (build 5e9476a)
// Generated at: 08-Nov-15 6:40:26 AM
///////////////////////////////////////////////////////////////////////////////
var _Lib = require('Lib');
console.log((0, _Lib.square)(11)); // 121