2017-08-19 10 views
0

私のdevExtremeプロジェクトからcordovaプラグインを呼び出そうとしています。プラグインが提供する方法の一つは、TypeScriptで、残念ながらあり、私はあなたの助けがはるかに以下のコードを変換するときに理解されるであろう、JavaScriptでコールを複製する多くの異なる角度を試してみた: プラグイン・コード:コードカープラグインのJavascriptへの置換え

function findNetworkPrinters(success: (printers: Printer[]) => void, failure: (reason: string) => void): void 

cordova.plugins.brotherPrinter.findNetworkPrinters(function (Printer) { 
    alert(printer); 
}, onSuccess, onFail); 

そして:

cordova.plugins.brotherPrinter.findNetworkPrinters(function (Printer) { 
    alert(printer); 
}, function()error{ 
    alert(error); 
}); 

プラグインの使用に関する簡単な説明を:私が試した何

findNetworkPrinters成功時に

、findNetworkPrintersは が(可能性の高い無線LANを使用して)ネットワーク上で発見されたプリンタのリストを提供します。プリンタが見つからないため、 はエラーとみなされず、この場合は のリストは空になります。

答えて

1

プラグインがまだコンパイルされていない場合は、JavaScriptにコンパイルする必要があります。しかし、通常、プラグインをnpm経由で入手した場合、そのステップはすでに完了しているはずです。

関数シグネチャを考慮すると、2回目の試行がより正確でしたが、エラー関数の構文エラーについて注意してください。Printerprinterは異なる変数になります。それに加えて、関数は実際には単一のプリンタではなく、プリンタの配列を提供します。より正確なバージョンは、

cordova.plugins.brotherPrinter.findNetworkPrinters(function(printers){ 
    printers.forEach(function(printer){ 
    alert(printer); 
    }); 
}, function(error){ 
    alert(error); 
}); 
です。
関連する問題