![](/img/trans.png)
[英]WordPress JavaScript import error Cannot use import statement outside a module
[英]jQuery in wordpress showing warning of 'cannot use import statement outside a module
我是开发 WordPress 主题的新手,但在导航菜单中遇到了一些问题。 由于某些原因,我想通过 jQuery 打开子菜单,但非常失败。 你们能帮我摆脱这个问题吗? 我在不同的 php 和 js 页面中编写了以下代码。
header.php
<div class="anilaDefaultHeader__bottom">
<nav class="main-menu" role="navigation" aria-label="<?php esc_html_e( 'Main Navigation', 'anila' ) ?>">
<?php
get_template_part( 'template/header/main-menu' );
?>
</nav>
<div class="search-area">
<?php get_search_form(); ?>
</div>
</div>
/src/js/navigation.js
import $ from 'jquery';
$( '.anilaDefaultHeader__bottom' ).on( 'mouseenter', '.menu-item-has-children' (e) => {
$(.currentTarget).addClass('open');
}).on('mouseleave', '.menu-item-has-children', (e) => {
$(e.currentTarget).removeClass('open');
})
/lib/anila-script.php
function anila_custom_script() {
wp_enqueue_style( 'style-css',get_template_directory_uri() . '/src/css/main.css' );
if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
wp_enqueue_script( 'comment-reply' );
}
wp_enqueue_script( 'anila_script', get_template_directory_uri() . '/src/js/navigation.js', array( 'jquery' ), '1.0.0', true);
include( get_template_directory() . '/lib/inline-css.php' );
wp_add_inline_style( 'style-css', $inline_styles );
}
add_action( 'wp_enqueue_scripts', 'anila_custom_script' );
一切正常,但是当我悬停时唯一的子菜单没有打开。
如果我 go 检查并手动添加 class '打开',它显示正确。 但它应该以我 hover 的身份打开。 我去检查和控制台,发现和错误
**
“不能在模块外使用 import 语句”
**
当我删除
import $ from 'jquery';
从导航.js
然后这个消息出现在检查->控制台
**
$ 不是 function navigation.js?ver=1.0.0:2
**
请帮助修复它。
尝试用jQuery
替换$
。 这通常可以为我解决问题。 并且不要使用import
。 在这里查看更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.