如何在没有此错误的情况下安装分支和自定义的离子本机Cordova插件?

时间:2019-04-21 13:02:34

标签: cordova ionic-framework cordova-plugins ionic-native

我试图派生一个cordova插件,进行一些修改,然后将其安装到我的Ionic 4项目中。

我做了以下事情:

步骤1:我将插件分叉到我自己的Github存储库中

步骤2:我已使用命令ionic cordova plugin add https://github.com/[MYUSERNAME]/cordova-plugin-speechrecognition --save将此插件成功添加到我的项目中。

我可以确认此步骤进展顺利,因为所做的更改已反映在plugins文件夹中,并且在package.json中,我观察到我的仓库的链接:

"cordova-plugin-speechrecognition": "git+https://github.com/[MYUSERNAME]/cordova-plugin-speechrecognition.git"

第3步:然后,当我尝试安装此插件时出错。运行命令npm install @ionic-native/speech-recognition时收到错误消息:

  

$ npm install @ ionic-native / speech-recognition-保存npm警告   ajv-keywords@3.4.0需要ajv@^6.9.1的同位体,但没有一个是   已安装。您必须自己安装对等依赖项。 npm警告   ionic-image-loader@7.0.0-beta.2需要一个对等体   @ ionic-native / file @ ^ 5.0.0-beta.21,但未安装。你必须   自己安装对等依赖项。 npm警告可选的跳过   可选依赖性:fsevents@1.2.8(node_modules \ fsevents):npm警告   notsup跳过可选依赖项:不支持的平台   fsevents@1.2.8:通缉{“ os”:“ darwin”,“ arch”:“ any”}(当前:   {“ os”:“ win32”,“ arch”:“ x64”})

     
      
  • @ ionic-native / speech-recognition @ 5.5.0更新了1个程序包,并在14.827s中审核了53115个程序包
  •   
     

发现有2个漏洞(低1高)运行npm audit fix进行修复   他们,或者npm audit了解详情

我在这里做错了什么,这个错误甚至意味着什么?

1 个答案:

答案 0 :(得分:0)

@ionic-native 插件的工作方式与其他 Cordova 插件不同。

他们在各自的 URL 下发布带有 npm 脚本的插件包装器。换句话说,每个插件包装器都有一个对应的 npm 包,但没有一个单独的 Git 存储库,所以你不能直接通过 Github URL 来引用单个包装器(在你的 package.json 文件中)。

可能的解决方法是:

  1. 在本地复制@ionic-native 插件包,进行更改,添加到您的 Git 存储库,并使用 npm install /path/to/your/folder 在本地安装修改后的 npm 包
  2. 在 Github 上 fork 插件,进行更改(可选:提交 Pull 请求),将修改后的插件作为单独的 npm 包发布