2017-05-25 11 views
0

当社のAureliaアプリでは、さまざまなダイアログでバーコードスキャンを使用しています。そこで、バーコードコンポーネントを作成しました。このコンポーネントにバーコードスキャナを使用すると、スキャン中に一部の文字が失われていることがわかりました。バーコードコンポーネント内では、入力フィールドを使用してスキャンまたはユーザーの入力をフィールドに入力します。入力キーを押すと、コンポーネントはバーコードを含むイベントを送信します。ダイアログはインターセプトして動作します。バーコードスキャナを使用した場合の双方向結合文字の欠損

私たちのアプリケーションと同じように、aureliaスケルトン・ナビゲーション・アプリ(github "skeleton-navigation \ skeleton-typescript")でこのコンポーネントを失敗させようとしましたが、一貫して動作します。 。

私はアプリに戻りました。バーコードコンポーネントを単純な入力フィールドに縮小すると、以下のようにも失敗します。 value.bindまたはvalue.two-wayを取り出すと、入力フィールドに文字の欠損がありません。

<input type="text" value.bind="barcodeValue1"/> 
    <input type="text" value.two-way="barcodeValue2"/> 

多くの違いがあり、我々のアプリを使用している例えばpackage.jsonファイルです:

を "オーレリア・フレームワークを":「NPM:[email protected]^1.0.0-rc.1.0。 2 "となる。

オーレリア・スケルトンは、使用している:

「オーレリア・フレームワーク」:「NPM:[email protected]^1.0.0」

あり、私たちが見ることができる一つの解決策であり、それは遅延を導入することです文字の間にスキャナを置くことができますが、バインディングがうまくいくようにして、Aureliaのバグかもしれないと考えていました。現在、バインディング機能を使用しないようにコンポーネントを書き直しています。私たちのアプリケーションの問題はInternet Explorerで発生し、Google Chromeで正常に動作します。

答えて

0

おそらくIEのバグです。私はあなたのスキャナが「入力」を押すか、 "されていることを確認し、この問題はあなたがまたdebounce

<input type="text" value.bind="barcodeValue1 & debounce"> 

http://aurelia.io/hub.html#/doc/article/aurelia/binding/latest/binding-binding-behaviors/1

を試みることができる「変更」に

<input type="text" value.bind="barcodeValue1 & updateTrigger:'change'"/> 

updateTriggerを変更することで解決することができると信じてタブをクリックしてください。

+0

updateTriggerを追加する: 'change'は入力問題をバインディングで解決したようです。さらにテストし、バーコードコンポーネントを変更して、どうやって動くかを見てみましょう。 –

関連する問題