我已经使用相同的 ionic 应用程序工作了 4 到 5 个月。
我今天发布到应用程序商店,并且必须对我的环境进行一些更新才能编译。我不记得任何会导致此问题的事情,但现在如果我尝试从此项目目录运行 ionic platform add ios ,则会失败并显示以下内容:
$ ionic platform add ios
Updated the hooks directory to have execute permissions
Running command: /Users/Me/Source/Repos/mobile-app/hooks/before_platform_add/init_directories.js /Users/Me/Source/Repos/mobile-app
Adding ios project...
iOS project created with cordova-ios@3.9.1
TypeError: Cannot read property 'split' of undefined
at default_CFBundleVersion (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:306:19)
at ios_parser.update_from_config (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:79:59)
at ios_parser.update_project (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:264:17)
at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/prepare.js:138:31
at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54)
at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30)
at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13)
at /usr/local/lib/node_modules/cordova/node_modules/q/q.js:509:49
at flush (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:108:17)
at doNTCallback0 (node.js:417:9)
我旁边的目录中有另一个 ionic/cordova 应用程序,它工作正常,所以我不认为它与我的环境有任何关系。
我已经卸载并重新安装了node和npm好几次了。从我的 Mac 和项目中删除了 node_modules
并得到了相同的结果。
这让我发疯。
最佳答案
我今天遇到了同样的问题,并追踪到了这个问题。我猜您的“无法读取未定义的属性‘分割’”错误可能是由您的项目中的不同内容引起的,但也许以下内容可以帮助其他人。
当我跟着 Cordova recommendation 时,它开始失败并改变了Cordova Patch Platform hook的方式是从 hooks/after_prepare
中的一个简单文件加载的定制<hook>
标签 config.xml
.
关于ios - Ionic 平台命令因 'Cannot read property ' split' of undefined' 突然失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33331020/