在cca上运行Ionic抛出"无法读取未定义的属性'键盘'@ app.js:14

Nim*_*Nes 6 android google-chrome google-chrome-app ionic-framework

以下是我在Chrome App for Mobile中设置Ionic所做的工作:

  1. 为移动项目创建了一个Chrome应用程序 - cca create projectname
  2. 创建了一个离子项目 ionic start projectname_ionic
  3. 删除Chrome应用程序www文件夹中的所有文件,但清单文件和background.js除外 - find projectname/www/* -not -name 'manifest*' | grep -v 'background.js' | xargs rm -rf
  4. 将Ionic项目www文件夹的内容复制到Chrome App www文件夹 - cp -r projectname_ionic/www/* projectname/www/
  5. <script src="cordova.js"></script>在projectname/www/index.html中注释掉,因为cca已经自动注入了它

尝试运行项目时,我从app.js第14行收到以下错误 -

未捕获的TypeError:无法读取未定义的属性"Keyboard"

在Chrome开发工具的控制台上输入(远程调试)时,window.cordova我确实得到了一个现有对象,所以问题是window.cordova.plugins是未定义的.

顺便说一下,应用程序本身确实在移动设备上加载,我可以切换标签,但在朋友标签页上,当我点击一个名字时,我确实看到它被点击了,但旁边没有任何事情发生.

我也尝试过以下方法:

  1. projectname_ionic/plugins有3个插件,其中projectname/plugins错过了所以我使用cca插件add ...添加到projectname/
  2. ionic platform add android在复制文件之前运行projectname_ionic /
  3. 尝试了几个旧版本的Ionic(绝望,我知道:))
  4. 还有其他一些我忘了的尝试......

任何人都知道我该怎么办?

提前致谢!

小智 9

我在删除plugins目录后开始得到同样的错误(我有一个钩子,它是添加插件作为添加平台的一部分).离子为新项目添加了3个插件.我的钩子中没有键盘和控制台.

检查您是否有以下cordova插件:

cordova plugin add ionic-plugin-keyboard
cordova plugin add org.apache.cordova.console
cordova plugin add org.apache.cordova.device
Run Code Online (Sandbox Code Playgroud)

一旦我将丢失的插件添加到钩子添加的插件中,错误就消失了.

此外,如果删除了node_modules,npm install则需要.