wrap-iife
要求包裹IIFE(wrap-iife)
在--fix
命令行上的选项可以自动修复一些被这条规则反映的问题。
您可以立即调用函数表达式,但不能调用函数声明。创建立即调用的函数表达式(IIFE)的常用技术是将函数声明包装在圆括号中。开头的圆括号使包含的函数被解析为一个表达式,而不是一个声明。
// function expression could be unwrapped
var x = function () { return { y: 1 };}(
// function declaration must be wrapped
function () { /* side effects */ }( // SyntaxError
规则细节
该规则要求所有立即调用的函数表达式都包含在圆括号中。
选项
该规则有两个选项,一个字符串选项和一个对象选项。
字符串选项:
"outside"
强制总是包装调用
表达式。默认是"outside"
。
"inside"
强制总是包装函数
表达式。
"any"
强制总是包装,但允许任何一种风格。
对象选项:
"functionPrototypeMethods": true
另外强制执行使用.call
和调用的包装函数表达式.apply
。缺省值是false
.outside 默认选项的错误
代码示例"outside"
:/*eslint wrap-iife: ["error","outside"
]*/