我试图用华而不实的旋转台(http://kenwheeler.github.io/slick/),并通过安装NPM。
通过browserify这样的,包括它:
slick = require('slick-carousel')
试图像这样运行:
$('.gallery__carousel').slick();
无控制台错误,不旋转木马初始化。这是怎么回事?
注意:不建议编辑库。如果您还有如果你想一个解决办法,那么你可以按照如下图所示。
我也有使用滑溜溜的browserify同样的问题,但没有解决方案,为我工作。然后我使用了到slick.js和改变 -
找:
(function(factory) {
'use strict';
if (typeof define === 'function' && define.amd) {
define(['jquery'], factory);
} else if (typeof exports !== 'undefined') {
module.exports = factory(require('jquery'));
} else {
factory(jQuery);
}
}(function($) {
更换:
;(function ( $, window, document, undefined ) {
添加的最后一行 -
找:
}));
更换:
})( jQuery, window, document );
希望它有助于理解这个问题。
出现该问题由于油滑v1.5.x的这段代码:
(function(factory) {
'use strict';
if (typeof define === 'function' && define.amd) {
define(['jquery'], factory);
} else if (typeof exports !== 'undefined') {
module.exports = factory(require('jquery'));
} else {
factory(jQuery);
}
}
作者认为,如果使用CommonJS的模块加载器(如Browserify),你应该在你的依赖有jQuery的(它与require('jquery')
直接调用)。
我喜欢这个解决方案:
npm install --save jquery
window.$ = window.jQuery = require('jquery');
require('slick-carousel');
我已经解决了这个问题的另一种方式。有NPM包slick-carousel-browserify
。所以:
npm install slick-carousel-browserify --save-dev
和:
$ = require ('./../../bower_components/jquery/dist/jquery.js');
slick = require('slick-carousel-browserify');
slick($('.selector'));
尝试添加
$ = require('jquery')
之前
slick = require('slick-carousel')
这个对我有用。
"browserify-shim": {
"jquery": "global:jQuery",
"slick-carousel": {
"depends": [
"jquery: jQuery"
],
"exports": "$.fn.slick"
}
},
"browserify": {
"transform": [
"browserify-shim"
]
}