我想将GitHub上可用的Cordova插件添加到我的IONIC 5+电容器(角度)项目中。
此外,我不知道如何安装和集成此插件,因为official manual表示,
npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter
也
npm install ionic-native/???????
我的问题就在这里!我该如何使用npm install ionic-native/????????
输入?所需的插件不作为Ionic Native插件存在。
只要执行以下命令就足够了:
npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter.git
npx cap sync
没有npm install ionic-native/????
我还想知道是否可以在Ionic Capacitor中轻松添加和使用它,或者是否必须在文件中进行更改。
如何在Typescript中解决此插件?我是否必须向module.app添加任何内容?
如果按照电容器规定的方式进行,是否足够?
import { Plugins } from '@capacitor/core';
const { Stepcounter } = Plugins;
我非常感谢您的任何建议!谢谢你 :) 最好的祝福, 程序员
答案 0 :(得分:1)
是的,您可以安装插件并在没有ionic-native的情况下使用它,基本上ionic-native只是类型库的包装器。
最简单的方法是实施服务
import { Injectable } from '@angular/core';
declare var stepcounter: any;
@Injectable({
providedIn: 'root'
})
export class StepCounterService {
constructor() {}
start(startingOffset) {
return new Promise((resolve, reject) => {
stepcounter.start(
startingOffset,
message => {
resolve(message);
},
() => {
reject();
}
);
});
}
stop() {
return new Promise((resolve, reject) => {
stepcounter.stop(
message => {
resolve(message);
},
() => {
reject();
}
);
});
}
getTodayStepCount() {
return new Promise((resolve, reject) => {
stepcounter.getTodayStepCount(
message => {
resolve(message);
},
() => {
reject();
}
);
});
}
getStepCount() {
return new Promise((resolve, reject) => {
stepcounter.getStepCount(
message => {
resolve(message);
},
() => {
reject();
}
);
});
}
deviceCanCountSteps() {
return new Promise((resolve, reject) => {
stepcounter.deviceCanCountSteps(
message => {
resolve(message);
},
() => {
reject();
}
);
});
}
getHistory() {
return new Promise((resolve, reject) => {
stepcounter.getHistory(
message => {
resolve(message);
},
() => {
reject();
}
);
});
}
}
现在您将其注入所需的位置,以便可以使用它
PS。我假设您使用的是angular和Typescript,如果您使用的是Vanilla ionic和javascript,则可以安装插件并使用它