首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用ngcordova?

为什么使用ngcordova?
EN

Stack Overflow用户
提问于 2015-06-24 02:48:31
回答 3查看 551关注 0票数 0

我正在使用I(新用户),我需要一些插件。我遇到了麻烦,为什么我想使用ngcordova,而不是直接使用cordova插件,使用以下步骤?

例如,为了能够捕获视频,我可以使用ngcordova插件:

代码语言:javascript
复制
$ cordova plugin add cordova-plugin-media-capture

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

代码语言:javascript
复制
module.controller('MyCtrl', function($scope, $cordovaCapture) {


  $scope.captureVideo = function() {
    var options = { limit: 3, duration: 15 };

    $cordovaCapture.captureVideo(options).then(function(videoData) {
      // Success! Video data is here
    }, function(err) {
      // An error occurred. Show a message to the user
    });
  }

});

或者我可以直接使用cordova插件:

代码语言:javascript
复制
$ cordova plugin add cordova-plugin-media-capture

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

代码语言:javascript
复制
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    navigator.device.capture.captureVideo(
            CaptureCB captureSuccess, CaptureErrorCB captureError,[CaptureVideoOptions options]
        );
}

然后我试着理解直接使用ngcordova插件的好处是什么?插件会不会直接变得更好,因为如果你需要最新的代码,而且没有抽象的话,你总是可以拥有它的?

EN

回答 3

Stack Overflow用户

发布于 2015-07-10 21:56:36

因为当你使用angularjs时,使用Cordova插件会变得容易得多。

使用ngCordova,您无需直接调用Cordova插件并确定正确的对象或插件名称,或者检查插件是否已实际安装,只需调用一个简单的AngularJS服务,如下所示:

代码语言:javascript
复制
$cordovaCamera.getPicture(options)
  .then(function(imageData) {

    // Process camera data

  }, function(error) {

    // Show an error to the user

  });

你可以在这里查看详细信息,http://blog.ionic.io/ng-cordova/

票数 1
EN

Stack Overflow用户

发布于 2016-08-16 05:46:44

ngCordova是一个框架,它使原生Cordova API可以作为AngularJS服务使用。

(Source)

因此,在没有ngCordova的情况下,您将通过“普通JS”直接访问Cordova库。ngCordova以一种角度友好的方式包装了这个库。

你可能会说,如果你在Angular中使用原始的Cordova (而不是ng- Cordova ),你应该将你的Cordova调用包装在一个服务中。这本质上是“重新发明轮子”,因为ng-cordova正是为了这个目的而提供的。:)

票数 1
EN

Stack Overflow用户

发布于 2016-04-01 04:46:03

如果您使用typescript,请注意ngcordova没有typescript类型,并且它们的函数签名可以并且有时确实不同于cordova函数签名。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31011051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档