2015-11-07 15 views
10

ES6構文の使用を含め、ReactJS.Netが正常に動作しています。ReactJS.net - どのようにES6モジュールを使用するのですか

私はBabelを使用しているデフォルトのJsx変換パイプラインを使用しています。 ブラウザのソースを見ると、ReactJS.NetによってES6コードがES5に変換されていることがわかります

モジュールを稼働させることができませんでした。

Uncaught ReferenceError: exports is not defined 
Uncaught ReferenceError: require is not defined 

どのように私はES6モジュールを使用してください:

ブラウザは私に2つのエラーが発生しますか?

最も簡単な例:

のLib:

import { square } from 'Lib'; 
console.log(square(11)); 

この(ブラウザのソースを見て)に変換取得し

Lib.js

export function square(x) { 
    return x * x; 
} 

UserOfLib.js

// @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 

答えて

9

現在、ReactJS.Net、モジュールを処理しません。モジュールを使用する場合は、WebpackやBrowserifyなどのモジュールバンドラを使用して、モジュールをバニラJavaScriptにコンパイルする必要があります。 ReactJS.NET自体のモジュールの実装は、依存関係を処理し、モジュールを正しい順序でロードする必要があり、Webpackのようなよくテストされたソリューションが既に存在するので、自明ではありません。

+1

これら2つをJSX処理と組み合わせて使用​​できますか? –

関連する問題