我使用gulp + browserify捆绑我的javascript文件。
我npm install select2 --save
require("select2");
module.exports = {
init: function() {
$('#datetime-start').datetimepicker({
dayOfWeekStart : 1,
lang:'en',
disabledDates:['1986/01/08','1986/01/09','1986/01/10'],
startDate: '1986/01/05'
});
}
}
这段代码效果很好,但后来我npm install jquery-datetimepicker --save
。
然后我又写了一些代码:
require("jquery-datetimepicker");
module.exports = {
init: function() {
$('#datetime-start').datetimepicker({})
}
}
browserify包是成功的,但是当我打开浏览器时,出现错误:
$(...)。datetimepicker不是函数。
可能是我错过了什么。
答案 0 :(得分:0)
jquery-datetimepicker
导出其工厂函数,该函数接收jquery作为参数来填充它(参见here),但似乎它被jquery-mousewheel
exports object覆盖。肯定是一个问题,并在问题#412和#496中进行了讨论。虽然存在解决方法以使其正常工作:
首先:
npm install jquery --save
npm install jquery-datetimepicker --save
npm install jquery-mousewheel --save
npm install https://github.com/kartik-v/php-date-formatter.git#closure --save
注意:<{strong> php-date-formatter
从#closure
分支安装为主分支不支持umd模式。
然后:
var $ = require('jquery');
DateFormatter = require('php-date-formatter')($);
require('jquery-mousewheel/jquery.mousewheel.js')($);
require('jquery-datetimepicker/jquery.datetimepicker.js')($);
module.exports = {
init: function() {
$('#datetime-start').datetimepicker({})
}
}