Ответ 1
Ионный (CLI) 2.1.7 кажется неустойчивым. Попробуйте переустановить ионный 2.0.0:
npm uninstall -g ionic
npm install -g [email protected]
Новый проект, только что установленный ионным (в соответствии с инструкциями на ионном сайте) на macOs Sierra. Когда я пытаюсь запустить ionic serve
, он не с этой ошибкой:
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
Я удалил и переустановил ионный, но все равно получаю такую же ошибку. У меня не возникало проблем при использовании OS-X 10.9.
Ионный (CLI) 2.1.7 кажется неустойчивым. Попробуйте переустановить ионный 2.0.0:
npm uninstall -g ionic
npm install -g [email protected]
npm uninstall -g ionic
npm install -g [email protected]
2.1.8 ИСПРАВИТЬ ЭТО!
Попробуйте удалить ionic
и cordova
и установить его отдельно. Первая кордова, затем ионная. Работал для меня!
Если вы перейдете в файл /ionic/lib/cli.js, около 150 или около того, появится строка, которая идет если (npmScripts.hasOwnProperty(...))
Измените это на if (npmScripts && (npmScripts.hasOwnProperty(...))) {
который должен решить эту проблему. Это было для меня.
Как и для ионной версии 2.2.X, проблема сохраняется, если вы пытаетесь обслуживать старое приложение. Решение. Создайте файл package.json с пустым объектом - {} и поместите его в корневую папку (рядом с папкой www).