1

我正在使用 Bitbucket 并已将 Scrutinizer 配置为在上传时分析代码。它抱怨未声明变量,并导致代码分级受到影响。

变量 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 );

这允许我txtVars在 jQuery 脚本中使用:

confirm(txtVars.confirm_submit);

我尝试txtVars在 jQuery 中声明几种不同的方式,但它没有帮助,它会产生错误,或者txtVars最终为空。

有没有办法在 jQuery 中声明这个变量以满足期望声明变量的代码检查器?

4

1 回答 1

1

我相信错误消息或多或少地告诉您需要发生什么,但有时细节(例如文件中的位置)可能难以捉摸。

为了解决这个问题,在脚本文件的顶部,甚至在 jQuery 之前,添加以下注释:

/** global: txtVars */
于 2016-09-14T14:47:56.960 回答