[英]Gulp Jscs - TypeError: Cannot convert undefined or null to object
I wanted to use gulp-jscs in my project, so I've installed it according the documentation : 我想在我的项目中使用gulp-jscs,所以我根据文档安装了它:
npm install --save-dev gulp-jscs
But when I try to run the gulp file, I'm getting this error: 但是当我尝试运行gulp文件时,我收到此错误:
TypeError: Cannot convert undefined or null to object
at Function.keys (native)
at copyConfiguration (C:\Users\[User]\Desktop\[Project]\
node_modules\jscs\lib\config\configuration.js:920:12)
Also, there are other errors related to this: 此外,还有其他与此相关的错误:
at NodeConfiguration.Configuration.
_processConfig([location-path]\node_modules\jscs\lib\config\configuration.js:459:5)
at NodeConfiguration.Configuration.load
([location-path]\node_modules\jscs\lib\config\configuration.js:211:10)
at null.StringChecker.configure
([location-path]\node_modules\jscs\lib\string-checker.js:62:29)
at null.Checker.configure ([location-path]\node_modules\jscs\lib\checker.js:27:39)
at Object.module.exports ([location-path]\node_modules\gulp-jscs\index.js:35:10)
at Gulp.<anonymous> ([location-path]\Gulpfile.js:60:17)
at module.exports ([location-path]\node_modules\orchestrator\lib\runTask.js:34:7)
at Gulp.Orchestrator._runTask ([location-path]\node_modules\orchestrator\index.js:273:3)
Process terminated with code 1.
You need to have a .jscsrc
file in the root of you project present. 您需要在项目的根目录中有一个
.jscsrc
文件。 In there you can provide options for JSCS as well as the code style rules that should be followed. 在那里,您可以为JSCS提供选项以及应遵循的代码样式规则 。
Below is the .jscsrc
that's used by node-jscs
project itself . 下面是
.jscsrc
多数民众赞成使用node-jscs
项目本身 。 You can use this to base your own configuration on. 您可以使用它来基于您自己的配置。
{
"preset": "google",
"fileExtensions": [".js", "jscs"],
"requireSemicolons": true,
"requireParenthesesAroundIIFE": true,
"maximumLineLength": 120,
"validateLineBreaks": "LF",
"validateIndentation": 4,
"disallowTrailingComma": true,
"disallowUnusedParams": true,
"disallowSpacesInsideObjectBrackets": null,
"disallowImplicitTypeConversion": ["string"],
"safeContextKeyword": "_this",
"jsDoc": {
"checkAnnotations": "closurecompiler",
"checkParamNames": true,
"requireParamTypes": true,
"checkRedundantParams": true,
"checkReturnTypes": true,
"checkRedundantReturns": true,
"requireReturnTypes": true,
"checkTypes": "capitalizedNativeCase",
"checkRedundantAccess": true,
"requireNewlineAfterDescription": true
},
"excludeFiles": [
"test/data/**",
"patterns/*"
]
}
Note that jscs
won't actually check for anything unless you have a "preset"
in your .jscsrc
or have explicitly specified the rules that should be followed. 需要注意的是
jscs
实际上不会检查任何东西,除非你有一个"preset"
你.jscsrc
或已明确规定的规则应遵循。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.