2016-04-01 7 views
2

これまでのwebpackを使用してjquery-mobileをロードしようとしています。 私はjquery-mobileがjquery-uiに依存していることを知っています.jquery-uiはjqueryに依存しています。Webpackでjquery-mobileを使用する

Webpackでこのようなシナリオを設定するにはどうすればよいですか?ここで

は私webpack.config.js次のとおりです。

var webpack = require('webpack'); 
var path = require('path'); 
var bower_dir = __dirname + '/bower_components'; 

module.exports = { 

    context: __dirname, 
    entry: './assets/js/index.js',   
    output: { 
     path: path.resolve('./assets/bundles/'), 
     filename: "[name]-[hash].js", 
    }, 
    plugins: [ 
     new BundleTracker({filename: './webpack-stats.json'}), 
     new webpack.ProvidePlugin({ 
      $: 'jquery', 
      jQuery: 'jquery', 
      'window.jQuery': 'jquery' 
     }) 
    ], 
    module: { 
     loaders: [ 
      {test: /[\/\\]node_modules[\/\\]some-module[\/\\]index\.js$/, loader: "imports?this=>window"} 
     ] 
    }, 
    resolve: { 
     alias: { 
      'jquery': bower_dir + '/jquery/src/jquery.js', 
      'jquery-ui': bower_dir + '/jquery-ui/jquery-ui.js', 
      'jquery-mobile': bower_dir + '/jquery-mobile/js/jquery.mobile.js' 
     } 
    } 
}; 

任意の助けもいただければ幸いです。

ありがとうございます。

+0

本当にwebpackでそれが必要ですか?ページへのスクリプト参照を追加するだけで、webpackにグローバルに利用可能になることを伝えることができるからです。 – vintem

+0

@VinTem十分な公正。どのようにそれを行う上の任意のアイデアですか? – kstratis

答えて

4

必要なスクリプトを正しい順序で追加するだけであれば、webpackで心配する必要はありません。

あなたがしなければならないので、同様に、これらのモジュールは、外部参照からロードされていることをWebPACKの教えです:

{ 
    externals: { 
    'jquery': 'jQuery' 
    } 
} 

これはあなたが必要とするたびに(「jqueryの」)は、それが可能なグローバルを返しますWebPACKのを伝えます変数jQuery。

+0

私はgspファイルにスクリプトタグとしてjquery.jsを追加しました。私は上記の外部オブジェクトをwebpack.configファイルに追加しました。私のモジュールはまだ$が定義されていないと言っています。私はrequire( 'jquery')を追加しました。私のバンドルされたモジュールのトップにはまだ喜びはありません。なぜこれが私のために正しく動作していないのか説明できますか? –

+0

詳細情報といくつかのコードサンプルを添付して質問を投稿してください。 – vintem

関連する問題