我是这个离子和科尔多瓦的新手,在理解一些基本知识方面有困难。在stackoverflow和ionic论坛中,有关该主题的问题字面上吸引了零个答案。我希望对此问题的概念有所了解,以解决我的问题。
有两个步骤:
cordova-plugin-ionic-keyboard
@ionic-native/keyboard
这两个有什么关系?它们的版本如何关联?如果我要安装特定版本的键盘,是否也应该为cordova选择相应的版本?例如,@ionic-native/keyboard
位于5.21.5
,cordova-plugin-ionic-keyboard
位于2.2.0
。
config.xml
中的这一行表示什么?这对我用来构建应用的ios版本有影响吗?<engine name="ios" spec="^5.0.0" />
第一个问题:
ionic cordova plugin add命令将下载包含containe package.json,config.xml的cordova插件,并将该插件保存到您的文件夹中,并为您使用的每种平台设置它。
如您所说,ionic-native只是对您刚刚添加的插件的包装。它将程序包键盘安装到您的node-modules文件夹中,并设置将插件正确插入package.json的方式。您也可以在需要使用插件的任何地方注入Angular提供程序。
此行:
<engine name="ios" spec="^5.0.0" />
构建器将使用它来知道它将用于ios引擎的ios配置。同样,当您使用模拟器尝试使应用程序在本地工作时。每个插件都有一个iOS版本/ Android版本/ Windows Phone版本。如果您修改此配置文件,某些功能将在某些平台上不可用。因此,对于第三个问题,当您进行构建或使用“ ionic serve”时,将读取package.json并将创建package-lock.json。这些文件是构建或本地运行应用程序所必需的。
最后,当您使用这类插件时,建议您创建与主代码分离的类,类或服务。在这种情况下,如果有所更改,您只需修改一个“文件”,然后您的所有应用程序将继续正常运行。在您的主要代码中只有一个
import {MyKeyboardClass} from "../shared-components/keyboard";
使您的代码简单易变。
希望此帮助:)