我正在开发Ionic,Angular和Cordova应用程序,我正在寻找在浏览器中进行开发时在Javascript中调用Cordova插件的最佳方法。什么是最佳做法?我怎么能让它变干?
让我们说我正在使用Cordova全球化插件。为了防止在浏览器内部进行测试时出现任何错误,我必须将代码包装在try中并像这样捕获:
try {
navigator.globalization.getPreferredLanguage(onSuccess, onError);
}
catch (e) {
console.log(e);
}
或者我会测试navigator.globalization
是否定义如下:
if(navigator.globalization) {
navigator.globalization.getPreferredLanguage(onSuccess, onError);
}
但是,每次我需要调用Cordova插件时,有什么方法可以避免这样做吗?
感谢您的帮助。
答案 0 :(得分:0)
仅当您在设备或模拟器中运行应用程序时,cordova.js
才可用。因此,您无法在浏览器中使用cordova插件。因为您需要在每个插件调用上检查if(navigator.globalization)
以便在浏览器上进行测试,因此我建议您在这些调用之上创建自己的包装器或函数,某种全局函数,它将调用这些插件函数。
这是一个简单的javascript示例。
function MyGlobalizationService(){
};
MyGlobalizationService.prototype.getPreferredLanguage = function(onSuccess, onError){
if(navigator.globalization) {
navigator.globalization.getPreferredLanguage(onSuccess, onError);
}
}
window.myGlobalizationService = new MyGlobalizationService();
然后在应用程序的任何位置使用window.myGlobalizationService
函数。