Javascript 卡IO phonegap插件不工作 .controller('paymentsController',函数($scope、$localStorage、$log、$state、$window、$IonicModel、Payment、ItemList、SweetAlert){ $scope.scanCard=函数(){ var心脏响应场=[ “卡片类型”, “修订的卡号”, “卡号”, “到期月”, “到期年”, “cvv”, “拉链” ]; var onCardIOComplete=功能(响应){ 对于(var i=0,len=cardIOResponseFields.length;i

Javascript 卡IO phonegap插件不工作 .controller('paymentsController',函数($scope、$localStorage、$log、$state、$window、$IonicModel、Payment、ItemList、SweetAlert){ $scope.scanCard=函数(){ var心脏响应场=[ “卡片类型”, “修订的卡号”, “卡号”, “到期月”, “到期年”, “cvv”, “拉链” ]; var onCardIOComplete=功能(响应){ 对于(var i=0,len=cardIOResponseFields.length;i,javascript,angularjs,cordova,ionic-framework,ngcordova,Javascript,Angularjs,Cordova,Ionic Framework,Ngcordova,} 我在我的phonegap中安装了一个读卡器插件(我正在使用ionic作为一个框架)。我遇到的问题是该插件无法工作。这就是我正在使用的插件 这是我的看法 .controller('paymentsController', function ($scope, $localStorage, $log, $state, $window, $ionicModal, Payment, ItemList, SweetAlert) { $scope.scanCard = function(){

} 我在我的phonegap中安装了一个读卡器插件(我正在使用ionic作为一个框架)。我遇到的问题是该插件无法工作。这就是我正在使用的插件

这是我的看法

  .controller('paymentsController', function ($scope, $localStorage, $log, $state, $window, $ionicModal, Payment, ItemList, SweetAlert) {

$scope.scanCard = function(){

  var cardIOResponseFields = [
    "card_type",
    "redacted_card_number",
    "card_number",
    "expiry_month",
    "expiry_year",
    "cvv",
    "zip"
  ];

  var onCardIOComplete = function(response) {
    for (var i = 0, len = cardIOResponseFields.length; i < len; i++) {
      var field = cardIOResponseFields[i];
      console.log(field + ": " + response[field]);
    }
  };

  var onCardIOCancel = function() {
    console.log("card.io scan cancelled");
  };

  var onCardIOCheck = function (canScan) {
    console.log("card.io canScan? " + canScan);
    var scanBtn = angular.element($("#scanBtn")).scope();
    //var scanBtn = document.getElementById("scanBtn");
    if (!canScan) {
      scanBtn.innerHTML = "Manual entry";
    }
  };

  CardIO.scan({
      "collect_expiry": true,
      "collect_cvv": false,
      "collect_zip": false,
      "shows_first_use_alert": true,
      "disable_manual_entry_buttons": false
    },
    onCardIOComplete,
    onCardIOCancel
  );

  CardIO.canScan(onCardIOCheck);
};
扫描卡
当用户单击#scanBtn时,它将加载此脚本

<button id="scanBtn" ng-click="scanCard()" class="button button-large button-block button-light">Scan Card</button>
var-cardIOResponseFields=[
“卡片类型”,
“修订的卡号”,
“卡号”,
“到期月”,
“到期年”,
“cvv”,
“拉链”
];
var onCardIOComplete=功能(响应){
对于(var i=0,len=cardIOResponseFields.length;i
我的应用程序在我的浏览器中或使用phonegap应用程序时不工作,但当我启动ionic emulator时,只显示输入卡表单的条目,并且没有扫描卡的摄像头加载,这使我相信摄像头执行失败

在浏览器上加载cardio时,出现以下控制台错误:
参考错误:未定义有氧运动。

在设备上尝试相同的操作


我在浏览器上遇到了同样的错误,它在设备上运行得很好。你可以将其视为摄像头/或通讯录选择器插件,它只在设备上运行,而不在sim卡或浏览器上运行。

所有cordova插件在浏览器或模拟器上运行时都会抛出错误。始终在设备和内部使用它们

      var cardIOResponseFields = [
    "card_type",
    "redacted_card_number",
    "card_number",
    "expiry_month",
    "expiry_year",
    "cvv",
    "zip"
  ];

  var onCardIOComplete = function(response) {
    for (var i = 0, len = cardIOResponseFields.length; i < len; i++) {
      var field = cardIOResponseFields[i];
      console.log(field + ": " + response[field]);
    }
  };

  var onCardIOCancel = function() {
    console.log("card.io scan cancelled");
  };

  var onCardIOCheck = function (canScan) {
    console.log("card.io canScan? " + canScan);
    var scanBtn = angular.element($("#scanBtn")).scope();
    //var scanBtn = document.getElementById("scanBtn");
    if (!canScan) {
      scanBtn.innerHTML = "Manual entry";
    }
  };

  CardIO.scan({
      "collect_expiry": true,
      "collect_cvv": false,
      "collect_zip": false,
      "shows_first_use_alert": true,
      "disable_manual_entry_buttons": false
    },
    onCardIOComplete,
    onCardIOCancel
  );

  CardIO.canScan(onCardIOCheck);
};

是的,你的权利一旦我把它放在设备上,我就没有出错。
$ionicPlatform.ready(function() { ... });