Questions tagged «tslint»

tslint是TypeScript的静态分析工具。

2
在打字稿中,是什么!(惊叹号/ bang)运算符取消引用成员时?
在查看tslint规则的源代码时,我遇到了以下语句: if (node.parent!.kind === ts.SyntaxKind.ObjectLiteralExpression) { return; } 之后请注意!运算符node.parent。有趣! 我首先尝试使用当前安装的TS(1.5.3)版本在本地编译文件。产生的错误指出了爆炸的确切位置: $ tsc --noImplicitAny memberAccessRule.ts noPublicModifierRule.ts(57,24): error TS1005: ')' expected. 接下来,我升级到了最新的TS(2.1.6),可以毫无问题地对其进行编译。因此,这似乎是TS 2.x的功能。但是编译完全忽略了爆炸,导致出现以下JS: if (node.parent.kind === ts.SyntaxKind.ObjectLiteralExpression) { return; } 到目前为止,我的Google赋使我失败了。 TS的感叹号运算符是什么,它如何工作?
451 typescript  tslint 

6
tslint / codelyzer / ng lint错误:“ for(…in…)语句必须使用if语句过滤”
棉绒错误消息: src / app / detail / edit / edit.component.ts [111,5]:对于(... in ...)语句,必须使用if语句进行过滤 代码段(这是一个有效的代码。也可以在angular.io表单验证部分中找到): for (const field in this.formErrors) { // clear previous error message (if any) this.formErrors[field] = ''; const control = form.get(field); if (control && control.dirty && !control.valid) { const messages = this.validationMessages[field]; for (const key in control.errors) …



4
不建议使用订阅:使用观察者而不是错误回调
当我运行lint时,它说: subscribe is deprecated: Use an observer instead of an error callback 代码(来自带有angular-cli的angular 7应用): this.userService.updateUser(data).pipe( tap(() => {bla bla bla}) ).subscribe( this.handleUpdateResponse.bind(this), this.handleError.bind(this) ); 不确切地知道我应该使用什么以及如何使用... 谢谢!

9
tslint说不允许调用console.log-如何允许它?
我刚开始使用带有typescript的create-react-app create-react-app my-app --scripts-version=react-scripts-ts 并且默认的tslint.json配置不允许console.log()。 我如何(暂时)启用console.log? 此文档位于 https://palantir.github.io/tslint/rules/no-console/。但是他们没有说要把这行放在哪里: "no-console": [true, "log", "error"] 我搜索并找到了tslint.json配置文件语法,所以我尝试了以下操作: "rules": { "no-console": [true, "warning"] } 试图获取只是警告的日志消息。但这没有用。 我已经注释掉了我拥有的少量console.log()行,但希望将来能够做到这一点。

8
tslint如何禁用错误“声明了someVariable但从未读取其值”
我正在使用tslint,但出现错误。 'myVariable' is declared but its value is never read. 我去了记录规则https://palantir.github.io/tslint/rules/的网站,并搜索了字符串,is declared but its value is never read但没有找到该文本。虽然我可以并且确实在寻找可能与该错误相关的设置,但它不应该是一种猜测游戏。 抑制/停止此错误所需的配置更改是什么? 同样重要的是,当我在tslint中收到一条错误消息“此事已发生”时,我如何才能找到用于设置或更改tslint行为以处理该错误的设置? 我也在网站上进行了搜索(我曾经使用过Google搜索) site:palantir.github.io is declared but its value is never read 但是没有出现直接点击,因此答案可能在palantir.github.io网站上,但我还没有找到。 其他人如何找到为抑制特定错误而更改的tslint变量/配置设置? 请不要建议我注释掉导致问题的代码。我正在寻找针对我的一般性问题以及特定问题的答案。谢谢。
82 tslint 

6
如何重写代码以避免TSLint“通过字符串文字访问对象”
我是TypeScript的新手,我想知道以下代码中是否存在重写代码的好方法,以避免TSLint错误“不允许通过字符串直接访问对象” interface ECType { name: string; type: string; elementType?: string; } export var fields: { [structName: string]: Array<ECType>; } = { }; class ECStruct1 { foo: string; bar: number; baz: boolean; qux: number; quux: number; corge: ECStruct2[]; grault: ECStruct2; constructor() { ... } } fields['ECStruct1'] = [ { name: 'foo', …

6
这可能是什么?[TsLint错误:“必须正确处理承诺”]
我正在使用async/awaitTypeScript做一些基本的异步操作,但是TSLint在下面的这两个函数中抛出了神秘的错误消息。有人遇到过这些错误吗?在错误输出中未提及控制规则,因此我不明白是什么原因造成的。任何想法将不胜感激。 主要要求: import * as rp from 'request-promise' export function getRequest(address: rp.Options): rp.RequestPromise { return rp(address) } 导出异步功能: export async function getStatus(message: Message) { try { const res = await getRequest(address) if (res.ready) { message.reply('...') } else { message.reply('...') } } catch (err) { message.reply(err) } } 这得到:Promises must be …

4
Angular2-HTTP RequestOptions头
我目前在tslint上遇到问题,希望有人可以指出正确的方向。 我正在尝试使用Angular2框架提供的HTTP发送HTTP GET请求。对于此请求,我必须指定内容类型和承载身份验证令牌。 我的代码示例: let headers = new Headers(); let authToken = this._user.getUser().JWT; headers.append('Content-Type', 'application/json'); headers.append('Authorization', `Bearer ${authToken}`); let options = new RequestOptions({ headers: headers }); this._http.get('http://' + url '/', options) .timeout(3000) .subscribe( (res) => { 这有效,但是,tslint抱怨 “ TS2345:类型'{headers:Headers;}'的参数不能分配给类型'RequestOptionsArgs'的参数。属性'headers'的类型不兼容。类型'Headers'不能分配给类型'Headers'。两种不同的类型具有此名称的名称,但它们不相关。“标题”类型中缺少属性“关键字”。” 感谢您的支持。

6
自动修复TSLint警告
[64, 1]: space indentation expected [15, 27]: Missing semicolon [109, 36]: missing whitespace [111, 24]: missing whitespace [70, 1]: Consecutive blank lines are forbidden 我一直从TSLint收到这样的警告。有大量的警告,很难手动修复它。 我一直在寻找一种可以自动修复大多数警告的方法。

3
如何使用tslint整理整个文件夹
是否可以使用tslint整理整个文件夹? 使用eslint可以eslint ./src验证整个文件夹。 当我尝试对tslint执行相同操作时,出现错误Error: EISDIR: illegal operation on a directory。在网站上的示例中-他们展示了如何验证单个文件,通常情况并非如此。 gulp-tslint仅通过命令行,是否可以在没有其他东西的情况下验证我的项目?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.