import * as moment from 'moment';
import { logger } from './utils/logger';
const x: moment.Moment = moment();
logger.info(x.toString());
بتهيئة tslint.json
:
{
"extends": ["tslint:all", "tslint-eslint-rules", "tslint-config-prettier"],
"rules": {
"completed-docs": [false],
"member-ordering": [
true,
{
"order": [
"public-static-field",
"protected-static-field",
"private-static-field",
"public-instance-field",
"private-instance-field",
"public-constructor",
"protected-constructor",
"private-constructor",
"public-static-method",
"protected-static-method",
"private-static-method",
"public-instance-method",
"private-instance-method"
]
}
],
"no-implicit-dependencies": false,
"no-inferrable-types": false,
"no-null-keyword": false,
"prettier": [
true,
{
"bracketSpacing": true,
"jsxBracketSameLine": false,
"parser": "typescript",
"printWidth": 120,
"semi": true,
"singleQuote": true,
"tabWidth": 4,
"trailingComma": "all",
"useTabs": false
}
],
"variable-name": [true, "allow-leading-underscore", "allow-pascal-case", "ban-keywords", "check-format"]
},
"rulesDirectory": ["tslint-plugin-prettier"]
}
تم الإبلاغ عن الأخطاء:
/Users/mrandolph/Projects/***/***/src/server/test.ts
ERROR: 4:26 no-unsafe-any Unsafe use of expression of type 'any'.
ERROR: 6:13 no-unsafe-any Unsafe use of expression of type 'any'.
القدرة على استخدام moment.js. اعتبارًا من الآن ، يقوم tslint باكتشافه كنوع: any
، والذي يتسبب في حدوث أخطاء في الفحص. ومن المثير للاهتمام ، إذا حاولت استيراد طريقة معينة ، فما زلت أحصل على نفس الأخطاء "no-non-safe-any":
مثال:
import { duration, Duration } from 'moment';
import { logger } from './utils/logger';
const x: Duration = duration(1, 'week');
logger.info(x.toString());
ينتج المخرجات:
/Users/mrandolph/Projects/***/***/src/server/test.ts
ERROR: 4:21 no-unsafe-any Unsafe use of expression of type 'any'.
ERROR: 6:13 no-unsafe-any Unsafe use of expression of type 'any'.
مجرد تنبيه - ملف .d.ts مضمن مع لحظة - لا حاجة للتثبيت منtypes.
مجرد تنبيه - ملف .d.ts مضمن مع لحظة - لا حاجة للتثبيت منtypes.
شكرًا لك ، كان هذا سؤالي الأول.
tslint:all
يمكّن no-unused-variable
. من المعروف أن هذه القاعدة تتداخل مع القواعد الأخرى التي تم فحصها: # 2736
يمكنك محاولة تعطيل no-unused-variable
ومعرفة ما إذا كانت الأخطاء ستختفي.
يمكنك محاولة تعطيل no-unused-variable ومعرفة ما إذا كانت الأخطاء ستختفي.
هذا مشغول. ولكن ماذا لو كنت أرغب في استخدام no-unused-variable
أيضًا؟ لماذا يبدو أن هذا يؤثر فقط على اللحظة في مشروعي - لدي العديد من مكتبات الجهات الخارجية الأخرى التي تستورد بشكل جيد.
ولكن ماذا لو أردت استخدام متغير no-unused-variable أيضًا؟
هناك عدة خيارات:
--noUnusedLocals
و --noUnusedParameters
بدلاً من ذلكno-unused-variable
، الثانية فقط no-unused-variable
لماذا يبدو أن هذا يؤثر فقط على اللحظة في مشروعي - لدي العديد من مكتبات الجهات الخارجية الأخرى التي تستورد بشكل جيد.
لا أحد يعرف حقًا ما الخطأ الذي يحدث ولماذا. القاعدة تعبث بطريقة ما مع الأجزاء الداخلية للنسخة المطبوعة.
التعليق الأكثر فائدة
هناك عدة خيارات:
--noUnusedLocals
و--noUnusedParameters
بدلاً من ذلكno-unused-variable
، الثانية فقطno-unused-variable
لا أحد يعرف حقًا ما الخطأ الذي يحدث ولماذا. القاعدة تعبث بطريقة ما مع الأجزاء الداخلية للنسخة المطبوعة.