Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何重构此类代码以修复codeclimate重复报告?_Javascript_Reactjs_Refactoring_Code Climate - Fatal编程技术网

Javascript 如何重构此类代码以修复codeclimate重复报告?

Javascript 如何重构此类代码以修复codeclimate重复报告?,javascript,reactjs,refactoring,code-climate,Javascript,Reactjs,Refactoring,Code Climate,我使用react&flux开发我的前端web应用程序: 所以我定义了如下常数: /js/constants/AppConstants.js const KeyMirror = require('keymirror'); module.exports = { PayloadSources: KeyMirror({ SERVER_ACTION: null, VIEW_ACTION: null }) }; const KeyMirror = require('keymirr

我使用react&flux开发我的前端web应用程序:

所以我定义了如下常数:

/js/constants/AppConstants.js

const KeyMirror = require('keymirror');

module.exports = {
  PayloadSources: KeyMirror({
    SERVER_ACTION: null,
    VIEW_ACTION: null
  })
};
const KeyMirror = require('keymirror');

module.exports = {
  ActionTypes: KeyMirror({
    GET_PRODUCT: null,
    UPDATE_PRODUCT: null,
  })
};
/js/constants/ProductConstants.js

const KeyMirror = require('keymirror');

module.exports = {
  PayloadSources: KeyMirror({
    SERVER_ACTION: null,
    VIEW_ACTION: null
  })
};
const KeyMirror = require('keymirror');

module.exports = {
  ActionTypes: KeyMirror({
    GET_PRODUCT: null,
    UPDATE_PRODUCT: null,
  })
};
这完全有效并且是正确的,然后我将这些代码推送到Github(使用Codeclimate集成)

气候说:

Similar code found in 1 other location (mass = 54)
const KeyMirror = require('keymirror');
显然,我们看到这一行
constkeymirr=require('keymirr')
是在两个不同的文件中定义的,Codeclimate认为这应该更改。但我在想,这只是一个导入库的语句


你觉得怎么样?我应该如何重构它呢?

我同意你的看法,这只是一个导入其他代码的语句,并且无论何时你想要使用该功能,它都需要在那里。因此,唯一可能的重构是合并两个文件
AppConstants
ProductConstants
。但这可能不是一个好的重构,因为分离应用程序常量和产品常量听起来是个好主意


我宁愿提出codeclimate的问题,也不愿尝试重构它。

我同意你的观点,这只是一个导入其他代码的语句,无论何时你想要使用该功能,它都需要存在。因此,唯一可能的重构是合并两个文件
AppConstants
ProductConstants
。但这可能不是一个好的重构,因为分离应用程序常量和产品常量听起来是个好主意


我宁愿提出codeclimate的问题,也不愿尝试重构它。

我不确定您是否可以控制repo的codeclimate设置,但您可以在
.codecClimate.yml
中更改质量阈值。我已经在我们的React/Redux应用程序中尝试了不同的阈值,目前我们的阈值设置为65,但我们可能会将其提高到75左右

---
engines:
  duplication:
    enabled: true
    config:
      languages:
        javascript:
          mass_threshold: 65

我不确定您是否可以控制repo的codecclimate设置,但您可以在
.codecclimate.yml
中更改质量阈值。我已经在我们的React/Redux应用程序中尝试了不同的阈值,目前我们的阈值设置为65,但我们可能会将其提高到75左右

---
engines:
  duplication:
    enabled: true
    config:
      languages:
        javascript:
          mass_threshold: 65