2017-03-08 15 views
3

でReveal.jsをインポートすることはできません私は輸入-ローダーを使用してのWebPACK 2.2でreveal.jsをインポートしようとしているが、私はエラーを取得しておいてください。はWebPACKの2.2

捕捉されない例外TypeErrorを:プロパティを設定することはできません「明らかに」 thisとしてグローバルウィンドウの変数を挿入する必要があり require('imports-loader?this=>window!reveal.js');

:未定義

の私はこのようにそれをインポートしようとしています。最後の行に

(function (root, factory) { 
    if (true) { 

     root.Reveal = factory(); 
    } 
})(undefined, function() { 

undefinedrootパラメータとして関数に渡されている:エラーの原因

コードの一部は、このです。

このコードは、webpackがreveal.jsライブラリをインポートする方法です。何らかの理由で、webpackは、コードをまとめてバンドルすると、thisundefinedに置き換えているようです。

webpackでこのライブラリを正しくインポートするにはどうすればよいですか?スクリプトローダーも試しましたが、同じエラーが発生します。 WebPACKの構成で

答えて

2

rules: [ 
    { parser: { amd: false }} 
] 

これはAMDはreveal.jsは、工場出荷時の包装にその条件をトリガされる理由である変数を定義する定義からWebPACKのを防止します。その後

私も

import head from 'headjs/dist/1.0.0/head'; 
import Reveal from 'reveal.js/js/reveal'; 

// Reveal.initialize(
経由reveal.jsとhead.jsをインポートしています