ESLint -- 禁止标识符中有悬空下划线 (no-underscore-dangle)
详细讲解请看func-names
配置文件代码:
// disallow dangling underscores in identifiers
'no-underscore-dangle': ['error', { allowAfterThis: false }],
Rule Details
该规则旨在消除标识符中悬空下划线的使用。
错误 代码示例:
/*eslint no-underscore-dangle: "error"*/
var foo_;
var __proto__ = {};
foo._bar();
正确 代码示例:
/*eslint no-underscore-dangle: "error"*/
var _ = require('underscore');
var obj = _.contains(items, item);
obj.__proto__ = {};
var file = __filename;
Options
该规则有一个对象选项:
- "allow" 允许指定标识符使用悬空下划线
- "allowAfterThis": false (默认) 禁止在 this 对象的成员变量上使用悬空下划线
- "allowAfterSuper": false (默认) 禁止在 super 对象的成员变量上使用悬空下划线
代码示例:
选项 { "allowAfterThis": false } 的 错误 代码示例:
/*eslint no-underscore-dangle: ["error", { "allowAfterThis": true }]*/
var a = this.foo_;
this._bar();