jquery - 如何修复“未捕获的语法错误:意外的令牌导入”(jQuery、Wordpress)?
问题描述
我$
从Wp中的jQuery导入了一个搜索按钮并得到了 Uncaught
SyntaxError:意外的令牌导入。
我改用了jQuery这个词$
,控制台是空的,但代码仍然不起作用。我做错了什么?
HTML 按钮
<span class="search-trigger js-search-trigger"><i class="fa fa-search" aria-hidden="true"></i></span>
JS
import $ from 'jquery';
class Search {
// 1. Describe, create, initiate our object
constructor(){
this.openButton = $(".js-search-trigger");
this.closeButton = $(".search-overlay__close");
this.searchOverlay = $(".search-overlay");
this.events();
} // 2.events
events(){
this.openButton.on("click", this.openOverlay.bind(this));
this.closeButton.on("click", this.closeOverlay.bind(this));
}// 3. methods (function, action...)
openOverlay(){
this.searchOverlay.addClass("search-overlay--active");
}
closeOverlay(){
this.searchOverlay.removeClass("search-overlay--active");
}
}
函数.php
wp_enqueue_script('script',
get_theme_file_uri('/js/modules/search.js'),
array('jquery'), microtime(), true);
预期结果 - 点击搜索标志,它会显示带有搜索输入的弹出窗口。点击关闭标志,它会关闭。
实际结果 - 没有任何反应。控制台错误未捕获SyntaxError: Unexpected token import.
解决方案
尝试将 jQuery 作为文件或其他方法(如 require)导入。您的环境似乎不支持导入令牌。
此外,如果您要在 Web 浏览器中使用该文件而不是 PHP 依赖项来填充大多数 Web 浏览器不支持的内容,请使用 ES5 语法而不是最新的语法。
推荐阅读
- php - PHP 中的 while 和 file_exists
- mysql - 四张表的mysql查询错误
- javascript - 如何从 Firebase 数据库中的对象获取数据?
- python - Python - ETree element.find 部分匹配
- android - 使用 LiveData 依赖项构建时“无法解决:support-fragment”
- office-addins - 将客户特定数据注入 Outlook 加载项
- c++ - 如何将全局 std::map 添加到 chaiscript?
- sdl-2 - 使用 Crystal 使用 SDL2 进行 RPG 风格的精灵移动
- sql - 转换失败:从字符串转换为唯一标识符
- arduino - ROS:节点订阅了一个主题但没有收到消息