管理cordova插件版本

时间:2018-04-04 14:38:34

标签: cordova cordova-plugins

我有一个cordova 7.1.0应用程序,我正在macOS 10.13.4(High Sierra)上开发,我很难管理插件版本,虽然它看起来应该很漂亮直截了当。

我希望将platformsplugins目录保留在源代码管理之外。我想在每次克隆回购时重新生成它们。

我还想在特定版本的库中添加插件。我不希望它下载任何错误修复或次要版本(即我想要完全版本1.2.3而不是^1.2.3~1.2.3)。

所以我尝试安装这样的插件:

cordova plugin add cordova-plugin-mixpanel@4.2.0

它添加得很好,但当我查看config.xml时,我看到了

<plugin name="cordova-plugin-mixpanel" spec="^4.2.0" />

不是我想要的。这意味着如果版本4.3.0出现,下次下载插件时,它将获得4.3.0。我想看到这个:

<plugin name="cordova-plugin-mixpanel" spec="4.2.0" />

意味着无论何时下载插件,它都将始终获取4.2.0版本。

同样,package.json看起来像这样:

"dependencies": {
    "cordova-plugin-mixpanel": "^4.2.0"
}

它应该是这样的:

"dependencies": {
    "cordova-plugin-mixpanel": "4.2.0"
}

我该如何实现?

1 个答案:

答案 0 :(得分:0)

看起来你可以通过npm设置实现这一点。如果你这样做

npm config set save-prefix=""

它将不再向您的软件包版本号添加^~

您可以详细了解save-prefix设置here。我最终在其中添加了一个带有该设置的.npmrc文件到我的cordova应用程序目录中,因此对于从该目录运行cordova的每个人都会产生这种影响。