Ionic 5: “ionic cordova plugin add” и “npm install @ionic-native/plugin --save”
Возьмем к примеру этот плагин
Устанавливается так:
ionic cordova plugin add call-number
npm install @ionic-native/call-number
npm и cordova
Возьмем другой плагин
Устанавливается так:
npm install call-number
OR
yarn add call-number
Только npm
Третий плагин устанавливается так:
cordova plugin add cozzbie.plugin.phonecalltrap
Только cordova
Для чего в первом варианте используется и npm и cordova, почему нельзя использовать что-то одно?
...забегаю наперед...
Когда я буду писать свой плагин, могу ли я использовать что-то одно?
Если нет, то почему (скорее всего ответ в первом вопросе), если да, то что предпочтительнее npm\yarn или cordova?
Ответы (1 шт):
Все Ionic плагины имеют два компонента:
- Cordova: Нативный код (для разных платформ, например: Android, iOS).
- Ionic Native: Обертка для соответствующего плагина (на JavaScript или TypeScript).
При установке вы делаете следующие:
// Установка Cordova (1)
ionic cordova plugin add call-number
// Установка Ionic Native (2)
npm install @ionic-native/call-number // или yarn add call-number (?)
По поводу примеров установки: самый правильный пример для Ionic плагинов, является первым. Так как сайт его генерирует автоматический на основе plugin.xml.
Когда я буду писать свой плагин, могу ли я использовать что-то одно?
Да можете, но только npm и при условии что вам не нужен платформо-зависимый код.
Источники: Ответ на EnSO, Ionic Community Plugins, Руководство по разработке плагинов для Сordova.