发现here的解释非常简短:
不要使用接受字符串参数的Function构造函数的版本来定义函数体
也可能适用于规则missing-optional-annotation
:
标记为可选的一个或多个参数后面的参数本身不标记为可选
答案 0 :(得分:0)
最好的例子可能是tslint测试套件中使用的例子。
var f = new Function("doSomething()");
这会导致违反no-function-constructor-with-string-args
规则。
对于missing-optional-annotation
,在以下示例中:
constructor(requiredArg1, optionalArg2?, requiredArg3) {}
第二个参数是可选的,但第三个参数不是。这是不允许的,会产生违规行为。