WordPress Gutenberg中ES6箭头函数无法正常工作求助
WordPress Gutenberg中ES6箭头函数未执行,直接输出函数代码的问题修复
问题核心
你当前的代码里,console.log(table)打印的是函数本身的引用,而非函数执行后的返回值——这不是箭头函数的语法错误,而是没有调用函数导致的。
原因分析
在JavaScript中,直接打印一个函数变量时,浏览器会输出该函数的字符串表示(也就是你看到的箭头函数代码)。只有当你调用函数(在函数名后加()并传入参数),才会执行函数逻辑并返回结果。
修复方案
调用函数而非打印函数引用
将console.log(table)改为带参数的函数调用:// 替换成实际的参数值 console.log(table('示例表格ID', '正常', 你的块引用对象));修正后的完整代码示例
const table = (table_id, tableStatus, block_table_ref) => { let selectedTable = getTable(table_id, tableStatus); if (selectedTable === undefined) { const newTableId = getNewTableIdByBlock(block_table_ref); selectedTable = getTable(newTableId, tableStatus); } return selectedTable; }; // 关键:调用函数并传入参数 console.log(table('your-table-id', 'active', block_table_ref));
额外检查点
- 确认
getTable和getNewTableIdByBlock函数已正确定义,且能根据传入参数返回预期值,避免函数调用后返回undefined - 如果是在Gutenberg块的编辑逻辑中使用,确保代码在合适的时机执行(比如在
useEffect钩子内,或者块的edit函数中),避免因DOM未加载或变量未初始化导致的问题
内容的提问来源于stack exchange,提问作者Web Master
相关产品推荐
相关产品推荐

