Bir tslint kuralı için kaynak koduna bakarken, aşağıdaki ifadeyle karşılaştım:
if (node.parent!.kind === ts.SyntaxKind.ObjectLiteralExpression) {
return;
}
!
Sonra operatöre dikkat edin node.parent
. İlginç!
Önce dosyayı şu anda yüklü olan TS (1.5.3) sürümüm ile yerel olarak derlemeyi denedim. Ortaya çıkan hata, patlamanın tam yerini gösterdi:
$ tsc --noImplicitAny memberAccessRule.ts
noPublicModifierRule.ts(57,24): error TS1005: ')' expected.
Sonra, en son TS (2.1.6) sürümüne geçtim. Yani TS 2.x'in özelliği gibi görünüyor. Ancak transpilasyon patlamayı tamamen görmezden geldi ve aşağıdaki JS ile sonuçlandı:
if (node.parent.kind === ts.SyntaxKind.ObjectLiteralExpression) {
return;
}
Google fu'm şimdiye kadar başarısız oldu.
TS'nin ünlem işareti operatörü nedir ve nasıl çalışır?