我使用Bitbucket并配置了审查器来分析上传时的代码。它会抱怨变量没有被声明,这会导致代码分级失败。
变量txtVars似乎从未被声明过。如果这是一个全局变量,考虑添加/** global: txtVars */注释。
这对我来说是有意义的,因为我在jQuery中使用变量而没有以任何方式声明它,除了在我的WordPress functions.php文件中:
txtVars
是通过以下PHP引入的:
wp_enqueue_script( 'my-script',
MY_URL . 'assets/js/public.js',
array('jquery', 'heartbeat'),
MY_VERSION,
true
);
$vars = array(
'confirm_submit' => __( 'Submit', 'textdomain' ),
'confirm_cancel' => __( 'Cancel', 'textdomain' )
);
wp_localize_script( 'my-script', 'txtVars', $vars );
这允许我在jQuery脚本中使用txtVars
:
confirm(txtVars.confirm_submit);
我试过在jQuery中声明txtVars
的几种不同方式,但它没有帮助,它产生一个错误,或txtVars
最终为空。
是否有一种方法来声明这个变量在jQuery,以满足代码检查器,期望变量被声明?
我相信错误消息或多或少地告诉您需要发生什么,但有时细节(例如在文件中的位置)可能难以捉摸。
为了解决这个问题,在脚本文件的顶部,甚至在jQuery之前,添加以下注释:/** global: txtVars */