2016-02-26 80 views
0

我有一個使用angular.jscordova中編寫的應用程序。Cordova`barcodeScanner`將結果返回給控制器

在角度控制器中,我從工廠調用掃描方法,該方法應該掃描QR碼並將結果返回給控制器。

下面的代碼管理開始掃描插件,但不返回結果回控制器。

這裏最好的辦法是什麼?

謝謝:-)

app.controller("LoggerController", ["$scope", "$location", qrReaderFactory", "$window", function ($scope, $location, qrReaderFactory, $window) { 
    $scope.$on('$viewContentLoaded', function() { 
     qrReaderFactory.scan("logger").then(function (result) { 
      $window.alert("We got a barcode\n" + 
       "Result: " + result.text + "\n" + 
       "Format: " + result.format + "\n" + 
       "Functionality: " + functionality + "\n" + 
       "Cancelled: " + result.cancelled); 
    }, 
     function (error) {     
      $window.alert("Scanning failed: " + error); 
     } 
    ); 
});    

}]); 

app.factory("qrReaderFactory", ["$http", "$q", "$window", function ($http, $q, $window) { 
    function scan(functionality) { 
     var deferred = $q.defer(); 

     cordova.plugins.barcodeScanner.scan(
      function (result) { 
       deferred.resolve(result); 
      }, 
      function (error) { 
       deferred.reject(error); 

      } 
     ); 
     return deferred.promise; 

    } 
} 

回答

0

對不起,我錯了。

它實際上工作正常。

問題出現在行"Functionality: " + functionality + "\n" +其中'功能'未分配。

相關問題