我想使用 Cordova Email Plugin在 ionic 应用中。
我可以在 $ionicPlatform 函数中访问插件,但是当我将我的代码移动到我的 Controller 中用于处理 ng-click 的函数时,它不起作用。
知道我的问题是如何从 Controller 访问 cordova 插件对象??
这是我在 app.js 中使用并运行的代码:
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
cordova.plugins.email.isAvailable(
function (isAvailable) {
alert('Service is available');
}
);
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
// for form inputs)
if(window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if(window.StatusBar) {
// org.apache.cordova.statusbar required
StatusBar.styleDefault();
}
});
})
这与 controller.js 中的相同代码无效(我在路由中设置了 Controller ):
.controller('ApplicationController', function($scope) {
$scope.sendMail = function () {
cordova.plugins.email.isAvailable(
function (isAvailable) {
alert('Service is not available');
}
);
}
})
这是我的点击调用:
<a ng-click="sendMail()">
<i class="icon ion-android-forums"></i>
send mail
</a>
这段代码在 $ionicPlatform 中运行良好,但在单独的 Controller 文件中不起作用。
最佳答案
您应该为此使用 Angular.js 包装器。
查看 ngCordova .
关于javascript - 从 ionic Controller 访问 Cordova 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26786233/