我是第一次使用RequireJS,所以我不太熟悉它,我已经阅读了文档并看到了示例,并且试图加载datepicker(flatpickr)模块。
<script src="./assets/js/require.min.js"></script>
<script>
requirejs.config({
baseUrl: '.'
});
</script>
<script src="./assets/js/dashboard.js"></script>
<!-- My dashboard.js -->
require.config({
shim: {
'flatpickrobj': ['jquery'],
'core': ['jquery', 'flatpickrobj'],
},
paths: {
'jquery': 'assets/js/vendors/jquery-3.2.1.min',
'flatpickrobj': 'assets/plugins/flatpickr/flatpickr.min.js',
}
});
在我的主索引页面上,我试图在这样的元素上初始化flatpickr
<script>
"use strict";
require(['flatpickrobj', 'jquery'], function(flatpickrobj, $){
var tm;
tm = flatpickr(".time_picker", {
enableTime: true,
noCalendar: true,
dateFormat: "h:i K",
});
});
</script>
控制台错误
Uncaught Error: Script error for "flatpickrobj"
有人可以指出我在哪里做错了吗?谢谢!
根据脚本的加载方式,您可能需要为该脚本提供一个初始化函数,在使用它之前,可能需要将其附加到全局或从初始化函数返回。
喜欢:
shim: {
flatpickrobj: {
exports: 'flatpickrobj',
// you might not need the init function.
init: function () {
return {
//* export the global flatpickrobjas to an object of window.
flatpickrobj: flatpickrobj,
};
},
},