web-dev-qa-db-fra.com

fonction ionique Impossible de lire la propriété 'hasOwnProperty' de indéfinie (CLI v2.1.7)

Nouveau projet vient d'être installé par ionic (suivant les instructions sur le site d'ionic) sur macOs Sierra. Lorsque j'essaie d'exécuter ionic serve, il échoue avec cette erreur:

TypeError: Cannot read property 'hasOwnProperty' of undefined
    at Object.runr (/usr/local/lib/node_modules/ionic/lib/cli.js:191:19)
    at /usr/local/lib/node_modules/ionic/lib/cli.js:54:9
    at _fulfilled (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:787:54)
    at self.promiseDispatch.done (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:816:30)
    at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:749:13)
    at /usr/local/lib/node_modules/ionic/node_modules/q/q.js:557:44
    at flush (/usr/local/lib/node_modules/ionic/node_modules/q/q.js:108:17)
    at doNTCallback0 (node.js:419:9)
    at process._tickCallback (node.js:348:13)


Cannot read property 'hasOwnProperty' of undefined (CLI v2.1.7)

Your system information:

Cordova CLI: 5.4.1 
Ionic CLI Version: 2.1.7
Ionic App Lib Version: 2.1.4
ios-deploy version: 1.9.0 
ios-sim version: 5.0.11 
OS: macOS Sierra
Node Version: v4.2.4
Xcode version: Xcode 8.0 Build version 8A218a

J'ai désinstallé et réinstallé ionic mais j'obtiens toujours la même erreur. Je n'entendais aucun problème avec OS-X 10.9.

18
meanstacky

Ionic (CLI) 2.1.7 semble instable. Essayez de réinstaller ionic 2.0.0:

 npm uninstall -g ionic

 npm install -g [email protected]
15
mvermand

nPM désinstaller -g ionic

npm install -g [email protected]

2.1.8 FIX IT!

voir https://github.com/driftyco/ionic-cli/commit/3fde646

3
Marco Cianci

Si vous allez dans le fichier /ionic/lib/cli.js, vers la ligne 150 environ, une ligne va If (npmScripts.hasOwnProperty (...))

Changez cela en If (npmScripts && (npmScripts.hasOwnProperty (...))) {

cela devrait résoudre ce problème. Ça l'a fait pour moi.

2
Michael

Depuis la version 2.2.X ionique, le problème persiste si vous essayez de servir une ancienne application. Solution: créez un fichier package.json avec un objet vide - {} et placez-le dans le dossier racine (à côté du dossier www).

2
David D.

Essayez de désinstaller ionic et cordova et de l’installer séparément. D'abord cordova, puis ionique. Travaillé pour moi!

2
Jean Manzo