如何解决-“<Something>已在上层作用域中声明”代码味道?

问题描述 投票:0回答:1

我的 sonarqube 仪表板中出现以下代码气味,我不知道如何解决此类问题。

“isInitialized”已在上层作用域中声明。

这是我的代码-

let _isInitialized = false;

/**
 * Getter for _isInitialized
 *
 * @return {Boolean} _isInitialized
 */
export const isInitialized = function() {
    return _isInitialized;
};

/**
 * Sets isInitialized
 * @param {Boolean} isInitialized new value for inititialized
 */
export const setIsInitialized = function( isInitialized ) {
    _isInitialized = isInitialized;
};

谁能解释一下我的代码有什么问题吗?

不知道要尝试什么,因为我的代码工作正常,但在 sonarqube 仪表板上出现此问题。

javascript sonarqube eslint
1个回答
0
投票

在这里,您使用

isInitialized
 在模块范围内定义了一个名为 
const

的变量
export const isInitialized = function() {

在这里,您使用参数名称在函数范围内定义了一个变量具有相同的名称

export const setIsInitialized = function( isInitialized ) {

不要这样做。为变量使用唯一的名称。

© www.soinside.com 2019 - 2024. All rights reserved.