2016-09-14 5 views
1

webpackと私のテストアプリケーションでjQueryバリデーションプラグインを使用しようとしています。これは私のファイルにです。

私はをIIFEに基づいており、グローバルなスコープにjqueryが必要であることを知っています。これはすでに私の設定です。ここ

それは自己:

{ 
    entry: { 
     app: "./assets/js/app.jsx" 
    }, 
    output: { 
     path: path.join(__dirname, "/build/js"), 
     publicPath: "/build/js", 
     filename: "[name].bundle.js" 
    }, 
    resolve: { 
     modulesDirectories: ["node_modules", "bower_components"], 
     alias: { 
      "jquery": "jquery/dist/jquery.min", 
      "jquery.validate": "jquery-validation/dist/jquery.validate" 
     }, 
     extensions: ["", ".js", ".jsx", ".es6"] 
    }, 
    amd: { 
     jQuery: true 
    }, 
    module: { 
     loaders: [ 
      { 
       test: /\.jsx?$/, 
       exclude: /node_modules/, 
       loader: "babel" 
      }, 
      { 
       test: /jquery.validate/, 
       include: /node_modules/, 
       loader: "imports?jQuery=jquery" 
      } 
     ] 
    }, 
    plugins: [ 
     new webpack.ProvidePlugin({ 
      "$": "jquery", 
      "jQuery": "jquery" 
     }) 
    ], 
    devtool: "source-map" 
} 

など、それを使用します。

import "jquery.validate" 

$("#test").validate(); 

P.S. jQueryの検証プラグインがjqueryのインスタンスを使用しようとしているようですが、私は[jquery: "3.1.0"]$.fnとバリデーションのプラグイン[jquery: "2.2.4"]のIIFEを比較してみましたが、私のバージョンを使用する方法を教えてください。

ご協力いただければ幸いです。

+0

あなたのためにそれが動作願って、このソリューションをお試しください! –

+0

'jquery'は' new webpack.ProvidePlugin({}) 'インスタンスのwebpack configでグローバルとして提供されていますので、既にそこには – Smile0ff

答えて

0
resolve: { 
     modulesDirectories: ["node_modules", "bower_components"], 
     alias: { 
"jquery.validate": "jquery-validation/dist/jquery.validate",   
"jquery": "jquery/dist/jquery.min" 

     }, 
     extensions: ["", ".js", ".jsx", ".es6"] 
    }, 

ファイルの位置を変更するだけです。

は、私はあなたがjqury.jsファイルの前またはjquery.jsファイルの後jqury.validate.jsファイルを追加

+0

あなたの答えはありがたいですが、残念ながらそのトリックはありません。 – Smile0ff

+0

いいえ、問題ありません。それは多くのアプリケーションで私の仕事です。 –

関連する問題