每当我使用指定的 --target 参数运行 ionic/cordova 模拟器命令时,我都会收到 cannot read property 'name' of undefined 错误。想知道以前是否有人遇到过这个问题,是否有可用的修复程序。
命令运行:ionic cordova emulate ios --target="iPhone-6, 10.3"和 ionic cordova emulate ios --target "iPhone-6, 10.3"
这是我的 ionic 信息
cli 包:
@ionic/cli-utils : 1.9.2
ionic (Ionic CLI) : 3.9.2
全局包:
Cordova CLI : 7.0.1
本地包:
@ionic/app-scripts : 2.1.4
Cordova Platforms : android 6.1.2 ios 4.4.0
Ionic Framework : ionic-angular 3.6.0
系统:
Android SDK Tools : 25.2.2
ios-deploy : 1.8.5
ios-sim : 6.0.0
Node : v6.8.1
npm : 3.10.8
OS : macOS Sierra
Xcode : Xcode 8.3.3 Build version 8E3004b
最佳答案
如果您运行以下命令但没有得到任何设备(如图所示):
cordova run ios --list
Available ios devices:
Available ios virtual devices:
这可能是由于 Ionic 指定了旧的 ios-sim
版本 4.4.0
而不是最新的。
cd platforms/ios/cordova && npm install ios-sim@latest
$ cd ../../../
$ cordova platform rm ios
$ cordova platform add ios@4.5.0
$ ionic cordova emulate ios --target --list
> cordova run ios --list --target --emulator
Available ios devices:
Available ios virtual devices:
iPhone-5s, 11.0
iPhone-6, 11.0
iPhone-6-Plus, 11.0
iPhone-6s, 11.0
iPhone-6s-Plus, 11.0
iPad-Air, 11.0
iPad-Air-2, 11.0
iPhone-7, 11.0
iPhone-7-Plus, 11.0
iPhone-SE, 11.0
iPad--5th-generation-, 11.0
iPad-Pro--12-9-inch---2nd-generation-, 11.0
iPad-Pro--10-5-inch-, 11.0
Apple-Watch-38mm, watchOS 4.0
Apple-Watch-42mm, watchOS 4.0
Apple-Watch-Series-2-38mm, watchOS 4.0
Apple-Watch-Series-2-42mm, watchOS 4.0
Apple-TV-1080p, tvOS 11.0
Apple-TV-4K-4K, tvOS 11.0
Apple-TV-4K-1080p, tvOS 11.0
iPad-Pro--9-7-inch-, 11.0
iPad-Pro, 11.0
您可以阅读有关此问题的更多信息 here on Git
关于angular - Cordova 无法使用 --target 读取未定义的属性 'name',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45778429/