2017-04-03 3 views
1

Ich habe meine angular2 auf die aktuelle Version aktualisiert, aber ich habe die folgenden Fehler: Es scheint, dass es ein Problem in der Jasmin-Indexdatei gibt.Angular2 zu Angular4 aktualisiert Fehler

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:40:37 A parameter initializer is only allowed in a function or constructor implementation.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:40:45 Cannot find name 'keyof'.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:40:51 '=' expected.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:42:45 A parameter initializer is only allowed in a function or constructor implementation.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:42:55 Cannot find name 'keyof'.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:42:61 '=' expected.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:58:41 Cannot find name 'Partial'.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:99:21 Cannot find name 'Partial'.

ERROR in [default] C:\src\Angular2\BuyPracticeTest_AV4\node_modules\@types\jasmine\index.d.ts:99:34 Cannot find name 'Partial'.

Hier ist meine package.json Datei:

{ 
    "name": "buy-practice-test", 
    "version": "0.0.0", 
    "license": "MIT", 
    "angular-cli": {}, 
    "scripts": { 
    "start": "ng serve", 
    "lint": "tslint \"src/**/*.ts\"", 
    "test": "ng test", 
    "pree2e": "webdriver-manager update", 
    "e2e": "protractor" 
    }, 
    "private": true, 
    "dependencies": { 
    "@angular/common": "^2.4.10", 
    "@angular/compiler": "^2.4.10", 
    "@angular/core": "^2.4.10", 
    "@angular/forms": "^2.4.10", 
    "@angular/http": "^2.4.10", 
    "@angular/platform-browser": "^2.4.10", 
    "@angular/platform-browser-dynamic": "^2.4.10", 
    "@angular/router": "^3.4.10", 
    "angular2-datatable": "^0.5.3", 
    "core-js": "^2.4.1", 
    "ng2-pagination": "^0.5.1", 
    "ng2-table": "^1.3.2", 
    "rxjs": "5.0.0-beta.12", 
    "ts-helpers": "^1.1.1", 
    "zone.js": "^0.6.23" 
    }, 
    "devDependencies": { 
    "@types/jasmine": "^2.5.47", 
    "@types/node": "^6.0.68", 
    "angular-cli": "1.0.0-beta.18", 
    "codelyzer": "1.0.0-beta.1", 
    "jasmine-core": "2.4.1", 
    "jasmine-spec-reporter": "2.5.0", 
    "karma": "1.2.0", 
    "karma-chrome-launcher": "^2.0.0", 
    "karma-cli": "^1.0.1", 
    "karma-jasmine": "^1.0.2", 
    "karma-remap-istanbul": "^0.2.1", 
    "protractor": "4.0.9", 
    "ts-node": "1.2.1", 
    "tslint": "3.13.0", 
    "typescript": "~2.0.3" 
    } 
} 

Antwort

1

keyof in Typoskript eingeführt wurde 2,1 und in Ihrem package.json sehe ich Typoskript 2.0.3.

Leider besteht eine Abhängigkeit von Typoskript 2.0.10 von @ angular-cli/ast-tools @ 1.0.16, so dass Sie möglicherweise nicht auf die neueste Typoskriptversion (2.2.2) aktualisieren können. Sie können jedoch möglicherweise Jasmin oder @ Arten/Jasmin herunterstufen.

Ich empfehle, dass Sie in kleineren Schritten aktualisieren. Verwenden Sie beispielsweise npm outdated, um zu sehen, auf welche Version Sie basierend auf all Ihren Abhängigkeiten aktualisieren können. Aktualisieren Sie einige Bibliotheken gleichzeitig - überprüfen Sie regelmäßig, ob Sie nichts kaputt gemacht haben. Nachdem Sie das Upgrade durchgeführt haben, aktualisieren Sie @ angular auf 4.0.

+0

lass mich es versuchen. danke – wal

+0

Ich habe Typoskript zu 2.2.2 aktualisiert, aber ich habe einen anderen Fehler bekommen. Modulerstellung fehlgeschlagen: TypeError: Die Eigenschaft 'exclude' von undefined kann nicht unter applyDefaults \ awesome-typescript-loader \ src \ instance.ts gelesen werden: 266: 72) at Object.ensureInstance – wal

+0

Sorry, ich habe meinen Beitrag aktualisiert. Ich schlage vor, dass Sie inkrementell aktualisieren. Ich denke, dass basierend auf Angular-Cli, können Sie nur auf [email protected] aktualisieren. Beginnen Sie wieder von vorne und verwenden Sie 'npm veraltet' – pixelbits

Verwandte Themen