Je fais une application de test avec Ionic2/Cordova/TypeScript/Angular. J'utilise tslint 5.6.0 .
J'utilise le module suivant: https://www.npmjs.com/package/tslint
Se concentrer sur un seul fichier ...
lors du peluchage du fichier suivant:
import { NgModule, ErrorHandler } from "@angular/core";
import { BrowserModule } from "@angular/platform-browser";
import { IonicApp, IonicModule, IonicErrorHandler } from "ionic-angular";
import { MyApp } from "./app.component";
import { AboutPage } from "../pages/about/about";
import { ContactPage } from "../pages/contact/contact";
import { HomePage } from "../pages/home/home";
import { TabsPage } from "../pages/tabs/tabs";
import { StatusBar } from "@ionic-native/status-bar";
import { SplashScreen } from "@ionic-native/splash-screen";
@NgModule( {
declarations: [
MyApp,
AboutPage,
ContactPage,
HomePage,
TabsPage,
],
imports: [
BrowserModule,
IonicModule.forRoot( MyApp ),
],
bootstrap: [ IonicApp ],
entryComponents: [
MyApp,
AboutPage,
ContactPage,
HomePage,
TabsPage,
],
providers: [
StatusBar,
SplashScreen,
{ provide: ErrorHandler, useClass: IonicErrorHandler },
],
})
export class AppModule { }
Je reçois:
The key 'bootstrap' is not sorted alphabetically
RuleFailurePosition { position: 790, lineAndCharacter: { line: 25, character: 4 } }
RuleFailurePosition { position: 799, lineAndCharacter: { line: 25, character: 13 } }
J'utilise les options suivantes:
{
"extends": "tslint:recommended",
"rules": {
"no-duplicate-variable": true,
"max-line-length": {
"options": [120]
},
"ordered-imports": false,
"new-parens": true,
"no-arg": true,
"no-bitwise": true,
"no-conditional-assignment": true,
"no-consecutive-blank-lines": false,
"no-console": {
"options": [
"debug",
"info",
"log",
"time",
"timeEnd",
"trace"
]
}
},
"jsRules": {
"max-line-length": {
"options": [120]
}
}
}
Quelle option dois-je configurer sur TSLint pour éviter d'afficher cette erreur?
La règle qui échoue ici semble être object-literal-sort-keys .
Vous devriez pouvoir le désactiver dans la section des règles de votre fichier de configuration en ajoutant:
"object-literal-sort-keys": false
Vous pouvez trouver toutes les règles tslint ici .
Pour toute personne venant ici qui effectue une migration vers TypeScript à partir de javascript, ou qui a simplement une base de code mixte javascript + typescriptm, vous pouvez également définir cette règle dans 'jsRules', c'est-à-dire pour se débarrasser de cette erreur, lorsque vous avez une console instructions définies à l'intérieur de javascript (pas les fichiers TypeScript).
//tslint.json
{
"extends": ["tslint:recommended", "tslint-react", "tslint-config-prettier"],
"rules": {
"object-literal-sort-keys": false //Disable for TypeScript
},
"jsRules": {
"object-literal-sort-keys": false //Disable for javascript
}
}