The fis3-lint-rich-eslint library exported as a fis3 plugin.
$ npm install fis3-lint-rich-eslint [--save-dev]
fis.match('*.js', {
lint: fis.plugin('rich-eslint'[, options])
})
/**
* The tool exposes an object containing the exception information through the 'fis.set("ESLINT_RESULT",obj)' method.
* Get it through 'fis.get("ESLINT_RESULT")' method,
* and it has two attributes that are 'errCount' and 'totalCount', as follows:
*/
fis.match('::package', {
prepackager: function(content, file, settings) {
let eslintErrCount = fis.get('ESLINT_RESULT.errCount');
// Exit the program when there is a eslint error.
if (eslintErrCount) {
process.exit()
}
return content;
}
})
See the options what is same as eslint CLIEngine for more details.
{
'fix': false,
'allowOutfixed': false,
'envs': envs,
'globals': [
'__inline',
'__uri',
'__RESOURCE_MAP__',
'fis'
],
'ignoreFiles': [
'bower_components/**',
'node_modules/**',
'lint-fixed/**',
'js-conf.js'
],
'useEslintrc': false,
'rules': rules
}
Globals and ignoreFiles are non-overlay, but envs is overlay.
The value refer to configuration of eslint-config-lagou.
Output the restored file to the directory '/lint-fixed/**', the premise is that the value of fix is true.
'root': true
Get root permissions, it will modify the source file,this operation does't promise correctness, so be careful!!!'dirname': '/lint-fixed'
Specify the root directory of the repaired file output
Glob patterns for paths to ignore.
Be careful the property named ignorePattern
is discarded.
As mentioned above, the following is introduce of rules:
- The rule of 'eslint:recommended' that has the right mark is enabled by default.
- The rule of 'eslint-config-lagou' is enabled by default
You can use annotation to add configuration for the specilfied file, like the following:
/* eslint-env node, mocha */
//dosomething...
/* global var1, var2 */
//dosomething...
/* eslint eqeqeq: 'off', curly: 'error' */
//dosomething...
/* eslint-disable */
alert('foo');
/* eslint-enable */
- If you want to know more, please refer to eslint inline configuration