我正在与您分享我的 js 代码,其中发生了冲突。它不包括 minicart/content.html
、authentication-popup.html
、Template/collection.html
、Template/等文件messages.html
、checkout/captcha.html
在控制台中,而在 luma(默认)主题中:
jQuery(document).ready(function() {
var date = new Date();
var d = date.getDate();
var m = date.getMonth();
var y = date.getFullYear();
var calendar_mode = '';
var switchMode = '<?php echo $block->getScopeConfig('events/calendar_setting/allow_switch_mode'); ?>';
var defaultMode = '<?php echo $block->getScopeConfig('events/calendar_setting/default_view_mode'); ?>';
if (switchMode == '1') {
calendar_mode = 'month,agendaWeek,agendaDay';
}
var events = <?php echo $eventsJson; ?>;
jQuery('#calendar').fullCalendar({
<?php if ($locale != 'en') { ?>
locale: "<?php echo $locale; ?>",
<?php } ?>
editable: true,
displayEventEnd:true,
disableDragging: true,
header: {
left: 'prev,next today',
center: 'title',
right: calendar_mode
},
defaultView: defaultMode,
eventTextColor: 'white',
timeFormat: 'H:mm',
events: events,
eventMouseover: eventMouseoverFunc,
eventMouseout: eventMouseoutFunc
});
</script>
最佳答案
好吧,在调试时我发现冲突是由于两个主要问题而发生的:
- 将 jQuery('#calendar').fullCalendar({ 的类更改为 jQuery('#any_unique_id').fullCalendar({ 并并行将日历 div id 更改为相同的 div id='calendar'> 到 div id ='any_unique_id'>
将 require 函数更改为:
require(['jquery', 'mage/mage','fullcalendar', 'moment'<?php if ($locale != 'en') { ?>, 'locale_all'<?php } ?>], function($){
终于成功了!
关于javascript - 日历未显示在我的自定义 magento2 主题中,但以亮度显示(默认),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49357683/