jquery.d.ts编译失败:TsLint:超过最大行长度

时间:2014-02-19 00:44:01

标签: visual-studio-2013 typescript web-essentials

我正在使用VS 2013版本的TypeScript版本0.95,但是linter在TS编译失败时出现错误:

  

TsLint:app.ts检查。 TsLint:jquery.d.ts编译失败:   TsLint:超过最大行长度140

jquery.d.ts文件确实有超过140行的行,但我找不到tslint配置文件来编辑max-line-length值。

我正在使用WebEssentials 2013,我没有将tslint安装为软件包(NPM或Nuget)的一部分。

有人能指出我正确的方向吗?我想现在在VS之外设置编译/ linting可能更容易..

感谢。

2 个答案:

答案 0 :(得分:6)

您可以修改tslint配置文件以更改最大行长度阈值。它使用分层配置系统,因此您可以根据创建/修改tslint.conf文件的位置来确定更改的范围。

  

默认情况下,配置是从tslint.json加载的,如果它存在的话   当前路径或用户的主目录,按此顺序。 (source...)

在我的Windows计算机上,全局配置文件位于C:\Users\My.Username,此处的更改将适用于所有项目。在Visual Studio的根目录中创建或修改文件意味着配置设置仅适用于该项目,并将覆盖全局配置文件。

您需要为最大行长度修改的特定配置选项称为max-line-length,如下所示:

"max-line-length": [true, 140]

更改140值以延长允许的行数或将true更改为false以禁用最大行长度规则。


或者,您可以执行Steve在其他答案中建议的内容,但您不需要完全禁用tslint,因为您可以禁用特定规则。其语法是:

/*tslint:disable:rule1 rule2 rule3*/

所以你会使用:

/*tslint:disable:max-line-length*/

禁用该文件的max-line-length规则。

所有配置选项和规则特定的禁用都在tslint website上完整解释。

答案 1 :(得分:4)

我认为max-line-length警告是针对单行的长度而不是文件中的行数。

你可以打破长线以缩小它们,或者只是忽略不是“你的代码”的文件。

/* tslint:disable */
// the jquery type definition
/* tslint:enable */

或设置您自己的配置:

-c, --config:
    The location of the configuration file that tslint will use to
    determine which rules are activated and what options to provide
    to the rules. If no option is specified, the config file named
    tslint.json is used, so long as it exists in the path.
    The format of the file is { rules: { /* rules list */ } },
    where /* rules list */ is a key: value comma-seperated list of
    rulename: rule-options pairs. Rule-options can be either a
    boolean true/false value denoting whether the rule is used or not,
    or a list [boolean, ...] where the boolean provides the same role
    as in the non-list case, and the rest of the list are options passed
    to the rule that will determine what it checks for (such as number
    of characters for the max-line-length rule, or what functions to ban
    for the ban rule).

来自https://www.npmjs.org/package/tslint