【发布时间】:2016-01-08 03:04:34
【问题描述】:
我目前正在此代码上尝试 eslint,但遇到了错误(请参见屏幕截图)。我不确定消除错误的最佳方法是什么。
代码sn-p:
let pathFor = ( path, view ) => {
if ( path.hash ) {
view = path;
path = view.hash.route;
delete view.hash.route;
}
尝试消除错误(可行但不确定是否是最好的方法):
let pathFor = ( pathData, viewData ) => {
if ( pathData.hash ) {
view = pathData;
path = view.hash.route;
delete view.hash.route;
}
这里是 eslinting 在 sublime 中的截图
【问题讨论】:
-
这个函数到底想完成什么?看起来您正在传递两个值,然后使用一个来覆盖另一个?
-
@Jonah Williams 哦,对不起,我已经编辑过了。这段代码 sn-p 是我从样板文件中复制/粘贴的内容。我只是在练习 eslinting,因为它对我来说是新的。我只想知道处理 no-param-reassign 的最佳方法。
-
将
"no-param-reassign": 0添加到您的.eslintrc文件中。否则你更新的代码会更好。 -
在您的修订版本中,
view和path没有在任何地方声明。如果它们不存在于更高的范围内,那将是一个错误。 -
@AndyRay 本文说明了不重新分配函数参数的重要性。 spin.atomicobject.com/2011/04/10/…
标签: javascript eslint