Ich habe gerade Angular auf den neuesten Stand gebracht 9.0.0-next.4
. Ich verwende kein Routing, aber nach dem Update wird diese Warnung plötzlich angezeigt. Wie entferne ich diese Warnung?
WARNING in
src/war/angular/src/app/app-routing.module.ts
ist Teil der TypeScript-Kompilierung, wird jedoch nicht verwendet. Fügen Sie den Eigenschaften 'files' oder 'include' in Ihrer tsconfig nur Einstiegspunkte hinzu.
package.json
"dependencies": {
"@angular/animations": "^9.0.0-next.4",
"@angular/cdk": "^8.1.4",
"@angular/common": "^9.0.0-next.4",
"@angular/compiler": "^9.0.0-next.4",
"@angular/core": "^9.0.0-next.4",
"@angular/forms": "^9.0.0-next.4",
"@angular/material": "^8.1.4",
"@angular/platform-browser": "^9.0.0-next.4",
"@angular/platform-browser-dynamic": "^9.0.0-next.4",
"@angular/router": "^9.0.0-next.4",
"@ng-bootstrap/ng-bootstrap": "^5.1.0",
"bootstrap": "^4.3.1",
"hammerjs": "^2.0.8",
"moment": "^2.24.0",
"ng-image-slider": "^2.0.1",
"panzoom": "^8.1.2",
"rxjs": "~6.5.2",
"tslib": "^1.9.0",
"zone.js": "^0.10.2"
},
"devDependencies": {
"@angular-devkit/build-angular": "^0.803.2",
"@angular/cli": "^8.3.2",
"@angular/compiler-cli": "^9.0.0-next.4",
"@angular/language-service": "^9.0.0-next.4",
"@types/jasmine": "~3.3.8",
"@types/jasminewd2": "~2.0.3",
"@types/node": "~8.9.4",
"codelyzer": "^5.0.0",
"jasmine-core": "~3.4.0",
"jasmine-spec-reporter": "~4.2.1",
"karma": "~4.1.0",
"karma-chrome-launcher": "~2.2.0",
"karma-coverage-istanbul-reporter": "~2.0.1",
"karma-jasmine": "~2.0.1",
"karma-jasmine-html-reporter": "^1.4.0",
"protractor": "~5.4.0",
"ts-node": "~7.0.0",
"tslint": "^5.15.0",
"typescript": "^3.5.3"
}
tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/out-tsc",
"sourceMap": true,
"declaration": false,
"module": "esnext",
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"importHelpers": true,
"target": "es2015",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
}
}
angular
typescript
angular-cli
dota2pro
quelle
quelle
tsconfig.app.json
das Problem löst"include" "src/**/*.ts"
in meinemtsconfig.app.json
und ich bekomme immer noch die Warnmeldungen.npm i @angular/cli@latest
Ich könnte es zum Laufen bringen, indem ich die
files
Eigenschaft in definieretsconfig.app.json
. Diese Dateien sind relativ zurtsconfig.app.json
Datei."files": [ "main.ts", "polyfills.ts" ]
quelle
Ich hatte gesehen, wie sich diese Nachrichten über die Umgebung beschwerten. *. Ts-Dateien, die tatsächlich in angular.json für verschiedene Builds erwähnt werden, nach dem Upgrade von Angular 8 auf Angular 9, einschließlich lokaler und globaler CLI. Ich habe jedoch nicht ausgeführt,
ng update
wodurch tsconfig.json möglicherweise wie folgt aktualisiert wird. Stattdessen habe ich packages.json manuell aktualisiert."files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ]
Dann verschwinden die Warnungen.
Aktualisieren Sie 2020-05-27 mit Angular 9.1.x in Visual Studio Professional 2019
Der kleine Block oben wird nicht mehr benötigt. Andernfalls werden die Spezifikationstestcodes "Modul nicht gefunden" gegen Module beschwert, die tatsächlich vorhanden sind, da
ng test
das Erstellen und Ausführen einwandfrei funktioniert und das Erstellen und Ausführen der ng-App in Ordnung ist. Anscheinend hatte sich etwas in NG zwischen 9 und 9.1 geändert.Hier ist meine Arbeit tsconfig.json jetzt:
{ "compileOnSave": false, "compilerOptions": { "baseUrl": "./", "outDir": "./dist/out-tsc", "sourceMap": true, "declaration": false, "module": "es2020", "moduleResolution": "node", "emitDecoratorMetadata": true, "experimentalDecorators": true, "target": "es2015", "typeRoots": [ "node_modules/@types" ], "lib": [ "es2018", "dom" ], "skipLibCheck": true } }
Bemerkungen:
Ich ziele nur auf Google Chrome und Safari ab. Wenn Sie also auf andere Browser abzielen möchten, müssen Sie diese möglicherweise entsprechend anpassen.
quelle
.ts
Eintrag entfernt (nur behalten.d.ts
). Weniger Warnungen jetzt. Aber nicht ganz entfernt. Ich habe alle tsconfig überprüft.Heute auf Angular 9 aktualisiert und Warnungen erhalten. Meine Lösung bestand darin, dieses Array "files" ohne das "src" im Pfad hinzuzufügen. Gerade hinzugefügt:
"files": [ "main.ts", "polyfills.ts" ],
Meine vollständige Datei tsconfig.app.json lautet:
{ "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../out-tsc/app", "module": "es2015", "types": ["node"] }, "files": [ "main.ts", "polyfills.ts" ], "exclude": [ "src/test.ts", "**/*.spec.ts" ] }
quelle
Verwenden Sie @ angle-builders / custom-webpack?
Ich wurde mit diesen Nachrichten in Angular 10 bombardiert, nachdem ich sie noch nie zuvor gesehen hatte. Das Ändern
includes
machte keinen Unterschied.Dann fand ich https://github.com/angular/angular/pull/36211 .
Dies ist im Wesentlichen der gleiche Fehler wie in dieser Frage, aber für
ngtypecheck.ts
Dateien (was auch immer sie genau sind , ich bin nicht sicher!)Es sieht für mich so aus, als hätte es tatsächlich damit zu tun
@angular-builders/custom-webpack
.https://github.com/just-jeb/angular-builders/issues/781, wo ein Problem gerade erst geöffnet wurde. Vielen Dank an https://stackoverflow.com/a/62573294/16940 für diesen Hinweis.
Das Update auf die neueste Beta hat das Problem für mich behoben, aber das neueste Problem finden Sie oben.
"@angular-builders/custom-webpack": "10.0.0-beta.0" // as of today
quelle
devDependencies
) und denselben Eintrag hinzuzufügenresolutions
, um zu vermeiden, dass möglicherweise mehrere Versionen des Webpacks installiert sind (@ angle-devkit # build-angle hat Webpack in seinen Peer-Deps). , da dies auch verschiedene Probleme verursachen könnte. Um zu überprüfen, ob Sie mehrere Versionen von Webpack installiert habenyarn why webpack
, geben Sie ein (und wenn Sie mit npm arbeiten, tun Sie sich selbst einen Gefallen und hören Sie auf;))."@angular-builders/custom-webpack": "^10.0.1"
Dies mag offensichtlich erscheinen, ABER Sie sehen diese Warnung für jede Datei, die Sie hinzufügen, aber noch nicht referenziert / in eine andere Datei importiert haben. Dies wird deutlich, wenn Sie versuchen, eine der Dateien zu bearbeiten, für die die Warnung gilt, und Ivy nach dem Bearbeiten der Datei nicht automatisch neu kompiliert wird. Sobald Sie das Modul in eine abhängige Datei importieren und verwenden, verschwinden die Warnungen.
Die obigen Antworten mögen für einige relevant sein, aber was ich gerade in diesem Beitrag beschrieben habe, war die Hauptursache für meine Warnungen. Beachten Sie, dass meine Datei tsconfig.json oder tsconfig.app.json kein Include- oder Dateiarray enthält und die Warnungen nicht mehr angezeigt werden, sobald ich tatsächlich auf die Dateien an anderer Stelle in meinem Projekt verwiesen habe.
quelle
02-08-2020
Ionic 5+ Angular 9+ App.
Hinweis: siehe
include
Abschnitt.tsconfig.app.json
{ "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ], "exclude": [ "src/**/*.spec.ts" ] }
quelle
Fügen Sie einfach auch die zone-flags.ts hinzu und entfernen Sie alle Includes.
"files": [ "src/main.ts", "src/polyfills.ts", "src/zone-flags.ts" ]
quelle
Nachdem ich die vorherigen Lösungsvorschläge ausprobiert hatte, funktionierte es für mich
Update in Ihrer package.json
"@angular-devkit/build-angular": "~0.1000.3"
können Sie hier alle Versionen sehen.
https://www.npmjs.com/package/@angular-devkit/build-angular?activeTab=versions
Überprüfen Sie, welche Version mit Ihrer aktuellen Version von Angular / Core funktioniert
Für Angular 10 arbeiten Sie mit Version 0.1000.3 von @ angle-devkit / build-angle
quelle
Ich habe viele Dinge versucht, um dieses Problem zu lösen, und am Ende konnte ich es lösen.
Mein Problem war das Aktualisieren einer App, die in Winkel 8.1 gefunden wurde, auf Winkel 9.x, aber die App verwendete auch Ionic
du solltest nur
aot: true
drinnen habenangular.json
in src / polyfills.ts './zone-flags.ts' importieren; .ts entfernen
https://medium.com/@grantbrits/upgrade-ionic-4-to-ionic-5-angular-76514079fb2a Geben Sie hier die Bildbeschreibung ein
quelle
Nach dem Upgrade auf Angular 10 erhielt ich die gleichen Warnungen. Das Ausführen
npm i
gemeldeter Versionsinkongruenzen für einige Entwicklungsabhängigkeiten. Nach dem Upgrade dieser (npm i <package>@latest
) und dem Aktualisieren von nodejs auf Version 12 (war Version 10) waren die Warnungen verschwunden.In meinem Fall waren dies die Pakete, die aktualisiert werden mussten:
@angular-devkit/build-angular
codelyzer
quelle
Ich hatte das gleiche Problem, nachdem ich die Angular 9-App auf Angular 10 aktualisiert hatte. Das Aktualisieren des Angular-Devkits löste das Problem.
quelle
In meinem Fall wurden die von der Warnung gemeldeten Klassen wirklich verwendet. Das Problem war jedoch, dass sie beim Importieren die Erweiterung ".js" hatten.
Diese Zeile verursachte also den Fehler "WARNUNG in src \ app \ user.service.ts ist Teil der TypeScript-Kompilierung, wird aber nicht verwendet":
import { UserService } from './user.service.js';
Und ich könnte es beheben, indem ich die Erweiterung ".js" entferne:
import { UserService } from './user.service';
quelle
Überprüfen Sie Ihre Hauptdatei
tsconfig.app.json
.und sehen Sie, ob Sie folgenden Inhalt enthalten,
{ "extends": "./tsconfig.json", "compilerOptions": { "outDir": "./out-tsc/app", "types": [] }, "files": [ "src/main.ts", "src/polyfills.ts" ], "include": [ "src/**/*.d.ts" ] }
Höchstwahrscheinlich waren dies die Schuldigen.
Entfernen Sie also diese Zeilen, falls Sie sie auf Ihrem haben
tsconfig.app.json
. Darum geht es in dem Fehler :)"exclude": [ "src/test.ts", "**/*.spec.ts" ]
Ich hoffe das wird jemandem helfen.
Vielen Dank.
quelle
Für mich war das Problem, dass ich verwendete:
loadChildren: () => import('./components/admin/_admin.module').then(m => m.AdminModule)
in meiner Datei route.ts, aber kein Modul importiert. Also, wenn ich nur setze
import { AdminModule } from './components/admin/_admin.module';
es löst es.
quelle