如何使用browserify和gulp为jquery设置依赖项

时间:2015-06-04 11:27:07

标签: jquery gulp browserify browserify-shim

所以我正在使用gulp和browserify,我需要jquery和一个插件(owl-carousel),它需要jquery作为依赖。

然而,在我使用的插件之后将查询编译到最终的js文件中时,文件的顺序似乎有些混乱,导致控制台错误:

Uncaught TypeError: Cannot read property 'fn' of undefined

如何告诉browserify存在依赖关系?我是否需要使用browserify-shim或者还有其他方法吗?

我的包括:

var $             = require('jquery'),
    owlCarousel   = require('./vendor/owl.carousel/owl.carousel.js');

我现在也在使用browserify-shim,但得到同样的错误。这就是我的package.js中的内容:

  "browser": {
    "jquery": "./vendor/jquery/jquery.js",
    "owlcarousel": "onedirection/static/js/vendor/owl.carousel/owl.carousel.js"
  },
  "browserify-shim": {
    "jquery": "$",
    "owlcarousel": {
      "exports": "owlcarousel",
      "depends": [
        "jquery:jQuery"
      ]
    }
  }

有人有任何想法吗?

1 个答案:

答案 0 :(得分:2)

在构建版本上有一个全局使用jquery($)的技巧:

global.$ = require('jquery');

在package.json

"browserify-shim": {
    "jquery": {
      "exports": "$"
    }
  }