2015-11-07 71 views
3

我想requireqTip2,但我有问题:的WebPack,jQuery和装载qTip2

require('jquery/src/sizzle/dist/sizzle.js'); 
require('jquery/src/jquery.js'); 
require('jquery-ui/jquery-ui.js'); 
require('qtip2/jquery.qtip.js'); 


$(document).ready(function() { 
    $('.tooltip').qtip({ 
     attr: 'tooltip' 
    }); 
}); 

当我加载包我得到:

Uncaught TypeError: $(...).qtip is not a function 

这表明qTip2不会加载。

我的WebPack配置为:

var webpack = require('webpack'); 
var path = require('path'); 
module.exports = { 
    entry: "./source/javascripts/main.js", 
    output: { 
     path: __dirname, 
     filename: "build/bundle.js" 
    }, 
    module: { 
     loaders: [ 
      { test: /\.css$/, loader: "style!css" }, 
      { test: /\.jsx?$/, loader: "babel" }, 
      { test: /jquery\/src\/selector\.js$/, loader: 'amd-define-factory-patcher-loader' }, 

     ] 
    }, 
    resolve: { 
     root: [path.join(__dirname, 'bower_components')] 
    }, 
    plugins: [ 
     new webpack.ResolverPlugin(
      new webpack.ResolverPlugin.DirectoryDescriptionFilePlugin('bower.json', ['main']) 
     ) 
    ] 
}; 

任何帮助将是巨大的,谢谢!

回答

0

在webconfig.js删除的jQuery插件作为

new webpack.ProvidePlugin({ 
    $: 'jquery', 
    jQuery: 'jquery' 
}) 

然后将其添加这样

window.$ = window.jQuery = require('jquery'); 
require('qtip2');