我试图将jquery和pickadate混合使用,但是它说虽然已经定义好了,但是defalts没有定义。
app.js
let $, jQuery;
jQuery = window.$ = window.jQuery = $ = require('jquery/dist/jquery.min');
require([
'pickadate/lib/picker',
'pickadate/lib/picker.date',
'pickadate/lib/picker.time'
]);
require('my.js');
webpack.mix.js
let mix = require('laravel-mix');
mix.js('resources/js/app.js', 'public/js/');
...
这是默认情况下picker.date.js的定义方式
DatePicker.defaults = (function (prefix) {
return {
// The title label to use for the month nav buttons
labelMonthNext: 'Next month',
labelMonthPrev: 'Previous month',
// The title label to use for the dropdown selectors
labelMonthSelect: 'Select a month',
labelYearSelect: 'Select a year',
// Months and weekdays
monthsFull: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
monthsShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
weekdaysFull: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
weekdaysShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
...
}
}
})(Picker.klasses().picker + '__')
Picker.extend('pickadate', DatePicker)
这是未定义的默认值
$.extend($.fn.pickadate.defaults, {
selectMonths: true, // Creates a dropdown to control month
...
});
jQuery已加载,并且没有使用$(...)方法的问题。
也许有人知道这个^^。
我不知道为什么会这样,希望在这里能得到一个好的解决方案。
答案 0 :(得分:0)
对不起,我不好,我应该使用'jquery'而不是'jquery / dist / jquery.min'来处理插件。