I have an Angular 4, ionic project that was working just fine untill I tried to add angular material. Since then building fails with a variety of errors to do with packages being out of date or not installed. I have attempted to get everything up to date using
npm install npm-check-updates
and then running it with the update option
ncu -u
But building still fails. The latest output is:
PS C:\projects\ghost> npm install rxjs@^6.0.0 npm WARN @ionic-native/admob-pro@4.6.0 requires a peer of rxjs@^5.0.1 but none is installed. You must install peer dependencies yourself. npm WARN @ionic-native/core@4.11.0 requires a peer of rxjs@^5.0.1 but none is installed. You must install peer dependencies yourself. npm WARN @ionic-native/in-app-purchase-2@4.5.3 requires a peer of rxjs@^5.0.1 but none is installed. You must install peer dependencies yourself. npm WARN @ionic-native/splash-screen@4.12.2 requires a peer of rxjs@^5.5.11 but none is installed. You must install peer dependencies yourself. npm WARN @ionic-native/sqlite@4.4.0 requires a peer of rxjs@^5.0.1 but none is installed. You must install peer dependencies yourself. npm WARN @ionic-native/status-bar@4.12.2 requires a peer of rxjs@^5.5.11 but none is installed. You must install peer dependencies yourself. npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.4 (node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
I've tried installing them individually, you can see that the error above can from trying
npm install rxjs@^6.0.0
Trying to install ^5.0.1 it then complains about rxjs@^6.0.0 not being installed.
My current package.json:
{
"name": "ghost",
"version": "0.0.1",
"author": "Ionic Framework",
"homepage": "http://ionicframework.com/",
"private": true,
"scripts": {
"clean": "ionic-app-scripts clean",
"build": "ionic-app-scripts build",
"lint": "ionic-app-scripts lint",
"ionic:build": "ionic-app-scripts build",
"ionic:serve": "ionic-app-scripts serve"
},
"dependencies": {
"@angular/animations": "^6.1.7",
"@angular/common": "6.1.7",
"@angular/compiler": "6.1.7",
"@angular/compiler-cli": "6.1.7",
"@angular/core": "6.1.7",
"@angular/forms": "6.1.7",
"@angular/http": "6.1.7",
"@angular/platform-browser": "6.1.7",
"@angular/platform-browser-dynamic": "6.1.7",
"@ionic-native/admob-pro": "^4.6.0",
"@ionic-native/core": "^4.11.0",
"@ionic-native/in-app-purchase-2": "^4.5.3",
"@ionic-native/splash-screen": "4.12.2",
"@ionic-native/sqlite": "^4.4.0",
"@ionic-native/status-bar": "4.12.2",
"@ionic/storage": "2.2.0",
"angular-md5": "^0.1.10",
"cc.fovea.cordova.purchase": "^7.1.2",
"cordova-android": "7.1.1",
"cordova-plugin-admobpro": "^2.31.4",
"cordova-plugin-console": "^1.0.5",
"cordova-plugin-device": "^2.0.2",
"cordova-plugin-extension": "^1.5.4",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-statusbar": "^2.2.2",
"cordova-plugin-whitelist": "^1.3.1",
"cordova-sqlite-storage": "^2.2.1",
"ionic-angular": "3.9.2",
"ionic-plugin-keyboard": "^2.2.1",
"ionicons": "4.4.3",
"ng2-socket-io": "^0.1.7",
"ngx-facebook": "^2.4.0",
"rxjs": "^5.5.12",
"socket.io-client": "^2.0.4",
"sw-toolbox": "3.6.0",
"zone.js": "0.8.26"
},
"devDependencies": {
"@ionic/app-scripts": "3.2.0",
"typescript": "^2.9.2"
},
"description": "An Ionic project",
"cordova": {
"plugins": {
"cordova-plugin-console": {},
"cordova-plugin-device": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-statusbar": {},
"cordova-plugin-whitelist": {},
"ionic-plugin-keyboard": {},
"cordova-sqlite-storage": {},
"cc.fovea.cordova.purchase": {
"BILLING_KEY": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAiXowzRxSOngnQxjOye2KlNab0Trgan9mupsgoe9WfjCaMlFwj9GsMNYYHhWXpAelN0tx2kusW6IS+fPVTSTapwmFmNX2ssycKtVvRC9pSA5fDWo9Ez2z8MENjZ8m2K7fC//qLvYCiFuTB5sos2oMCqlGc36x6SKThk4R1kuJ+yBWijzOBmnEyQyAMRZ+gWltz7wMEWqTCz6w8u6LsJATF3F8KwXy9YGi46+Erixj1d8B26mABXAKomWuwfuhNUazGNNSSldbO9nCCbvq2QIa29odP1su0F1bgjRXuGrjFeKtrfHW8+7dns0g/lTWCPckVI53SLVL3DjtjV+3UmsDOQIDAQAB"
},
"cordova-plugin-admobpro": {}
},
"platforms": [
"android"
]
}
}
Advice needed please. And thank you.