2016-11-21 3 views
2

私はこれを使用しますChart JS reactJs wrapper libraryCDNを使用する際にライブラリを 'require'なしで使用する

私はlibrary from a CDNを消費していますが、私はこのプロジェクトのモジュールバンドルプロセスを設定していません。私はできることは知っていますが、requireを使わずにこのライブラリをどのように使うべきかと思っていました。私は、新しいjsの実践にはまだまだ不快な人たちのために、これをどうやって行うのかを説明する答えが役に立つと思う。反応ラッパーチャートJSの例では

あなたはそれが表示されていることが表示されます:requireなし

var LineChart = require("react-chartjs").Line; 

var MyComponent = React.createClass({ 
    render: function() { 
    return <LineChart data={chartData} options={chartOptions} width="600" height="250"/> 
    } 
}); 

はCDNを使用している場合LineChartに同じ値を割り当てることがとにかくありますか?

答えて

1

CDNが提供するファイルを見て、自分で見つけてください。

それはこの形式になります。

(function (root, factory) { 
    // Do some stuff to detect the environment 
    // When everything fails, just assign a global variable: 

    root["react-chartjs"] = factory(root["React"], root["ReactDOM"], root["Chart"]); 


})(this, function (...) { 
    .... 
}); 

rootはグローバルオブジェクト(ブラウザでwindow)で、factoryが依存関係を取り、ライブラリを返すだけの関数です。

LineChartを取得するには:

window['react-chartjs'].Line 

ReactReactDOMChartを必要factoryを覚えておいてください。そして、これらすべてが同じ方法で指定されたグローバル変数にあると仮定します。

+0

すばらしい@marcoありがとうございました!私はまた、CDNから 'ChartJs'を消費しています。これは私がセットアップを変更する必要がありますか? –

+0

このファイルの前に 'ChartJs'をロードし、' ChartJs'が 'Chart'という名前のグローバル変数に格納されている限り、' factory'パラメータを見てください –

+0

はうまく動作します'ReactCharJs'のようなsthでは、CDNでの読み込み時に' React'を使うことと同じです –

関連する問題