草庐IT

javascript - eslint警告解释

我一直在玩ES6和angular,我正在使用eslint-plugin-angular来验证我的javascript。我有以下服务:exportfunctionrunBlock($rootScope,$state,$log){'ngInject';$rootScope.$on('$stateChangeStart',function(event,toState){//...});但是eslint给我以下错误:The"$on"callshouldbeassignedtoavariable,inordertobedestroyedduringthe$destroyevent我的意思是我理解

javascript - 基于恒定条件调用 react Hook 是否安全?

RulesofHooks要求在每次渲染时以相同的顺序调用相同的钩子(Hook)。如果您违反此规则,将会出现什么问题的解释。例如这段代码:functionApp(){console.log('render');const[flag,setFlag]=useState(true);const[first]=useState('first');console.log('firstis',first);if(flag){const[second]=useState('second');console.log('secondis',second);}const[third]=useState('

javascript - 基于文件扩展名的不同eslint规则

是否可以根据文件扩展名对文件应用不同的规则?例如,我的源代码中有[test].spec.js测试规范文件,但我喜欢添加仅适用于它们的规则。 最佳答案 这是添加的。文档here文档中的例子{"rules":{"quotes":[2,"double"]},"overrides":[{"files":["bin/*.js","lib/*.js"],"excludedFiles":"*.test.js","rules":{"quotes":[2,"single"]}}]}有效地,您可以提供glob和一组规则,这些规则覆盖匹配每个glob的文

javascript - JS 装饰器的 ESLint 意外字符 '@'

我试图在我的JS项目中使用装饰器,但是ESLint抛出一个错误,指出@符号是一个意外的字符。我的代码:@observableitems=[];我的.eslintrc:{"parserOptions":{"ecmaVersion":6,"ecmaFeatures":{"jsx":true},"sourceType":"module"},"env":{"browser":true,"node":true,"es6":false},"ecmaFeatures":{"modules":true},"rules":{"strict":[2,"global"],"quotes":[2,"singl

javascript - ESLint 错误尝试部署函数 Firebase

我尝试部署fireabase示例,但是当我尝试部署它时,CLI启动错误:[代码]constfunctions=require('firebase-functions');//toactivatefirebasefunctionsconstadmin=require('firebase-admin');//toactivefirebasedatabasepermissionsadmin.initializeApp(functions.config().firebase);exports.addMessage=functions.https.onRequest((req,res)=>{//

javascript - 'else' 之后不必要的 'return' 。 (不返回)

我正在使用es-lint来清理代码中的错误。我遇到过这个错误:Unnecessary'else'after'return'.(No-else-return)}else{我总是在返回后使用else语句。有什么我可能忽略的吗?if(cctot0){alert('Creditunder$3.00notallowed');returnNumber.MIN_SAFE_INTEGER;//importanttoreturn0sowecancheckfortheseconditionsforvalidation}else{cctot*=-1;}returnprecise(cctot);

javascript - 关于换行格式的 Prettier.js 方法参数

我正在运行Prettier.js(VSCode插件)/prettier-eslint-cli。它将超过80个字符限制的方法参数格式化如下(将每个参数放在一个新行上)。someMethod(argumentOne,argumentTwo,argumentThree,argumentFour,argumentFive,//Hits80characterwordwraphereargumentSix,argumentSeven){//Somecodes}有没有办法修改选项,使其格式化参数以尝试在每行上容纳80个字符?而不是每次都将它们添加到新行。someMethod(argumentOne,

javascript - 从子文件夹运行 eslint 时无法解析相对模块路径

当我从我的存储库的根文件夹运行eslint时,一切运行正常,没有错误。但是当我从子文件夹运行时,我得到大量导入/Unresolved问题,而当我从根目录运行时不会发生:/reporoot/subfolder0/subfolder1/MyFile.js11:8errorUnabletoresolvepathtomodule'foo'import/no-unresolved11:8errorMissingfileextensionfor"foo"import/extensions14:97errorUnabletoresolvepathtomodule'foo'import/no-unre

javascript - 从命令行安装ESlint错误

我在安装eslint时遇到以下错误:npmERR!Darwin15.4.0npmERR!argv"/usr/local/bin/node""/usr/local/bin/npm""install""-g""eslint"npmERR!nodev5.5.0npmERR!npmv3.8.8npmERR!path/usr/local/lib/node_modulesnpmERR!codeEACCESnpmERR!errno-13npmERR!syscallaccessnpmERR!Error:EACCES:permissiondenied,access'/usr/local/lib/node

javascript - 如何使用 ESlint 禁止特定的命名函数

现状在我们当前的项目中,我们遇到了一些反复出现的问题,人们使用来自seamless-immutable的“asMutable”实际上没有必要的地方。这导致“搜索字符串“asMutable”的项目”成为每个拉取请求的一部分。为了加快速度,我们想在我们的eslint中添加一条警告规则。但我还没弄明白怎么办。问题虽然我乐于接受建议,但对我来说现在最好的解决方案是允许我指定要禁止的函数名称的规则。ESlint或相应的插件是否具有这种功能?附加说明我有点想写我们自己的,但我被AST吓到了以及编写我的第一条规则的启动难度。如果我找不到更好的答案,我可能会冒险,是的,我们在PR中得到了足够多的答案来