0

我已经安装了一个名为Moment.js的第三方库bower install --save moment。我有一个名为calendar.js的脚本放置在我的主题的脚本文件夹中。但是,当我在 calendar.js 中使用 moment 时,似乎该库未链接到它。当我将所有代码从calendar.js移到main.js时,一切正常。问题是我需要通过加载 json 文件将数据传递到脚本中并通过 AJAX 发送数据,所以我需要制作一个单独的脚本,在本例中为calendar.js。那么我该如何解决这个问题呢?

编辑:我在我的主题中加入了calendar.jsfunctions.php ,如下所示:

function igs_scripts_styles() {
  wp_enqueue_script( 'calendar', get_template_directory_uri() . '/assets/scripts/calendar.js', array(), false, true );
}
add_action('wp_enqueue_scripts', 'igs_scripts_styles');
4

2 回答 2

0

在 wordpress 中使用脚本之前,您需要注册并入队脚本,然后只有 wordpress 能够识别该脚本。据我所知,main.js 和 Moment.js 脚本是使用 wp_enqueue_script 正确添加的,这就是它们工作正常的原因。我相信如果您也将 Calendar.js 加入队列,那么 JS 文件也可以正常工作。

于 2016-12-27T14:02:36.367 回答
-1

这并不是真正解决此问题的方法,而是一种解决方法。所以我注意到,当我将所有代码从calendar.js移到main.js时,它工作得很好。我所做的是将calendar.js与 main.js 的依赖关系排入队列(因为 moment.js 在 main.js 中可用。这是代码:

 wp_enqueue_script( 'calendar', get_template_directory_uri() . '/assets/scripts/calendar.js', ['sage/js'], null, true );
于 2016-12-28T07:42:05.020 回答