Angular.Dart コンポーネントにサンプル コードがあります。
<paper-input bind-value="value" label="MyLabel" floatingLabel></paper-input>
紙の入力には、Angular.Dart コンポーネントにある値が表示されますが、floatingLabel は表示されません。ただし、入力をクリックすると、ラベルが非表示になっているかのように標準のアニメーションで表示されます。これは paper-input 要素の「コンストラクタ」のバグのようです。新しく作成されたかどうかに関係なく、テキストが入力フィールドにある場合、フローティング ラベルが入力フィールドの上に表示されることを期待していました。このグリッチを修正する方法はありますか?
進行状況: ( github.com/Polymer/paper-input/issues/117 )
上記の問題を集中的に調べていますが、それに応じて修正を実装するのは簡単ではありません。@GünterZöchbauerが提案したように、dart:js
ライブラリを使用できます。ただし、このソリューションは特に PolymerDart 向けではなく、PolymerJs 向けに特別に設計されたようです。考えすぎかもしれませんが、単純なポートを実行できません。
しかし、この問題は良い点をもたらします。要素は変更を検出できません (何らかの理由で)。そのため、更新をトリガーするには、何かを突き刺す必要があります。私は現在、Element への dart コンテキストを持っていますが、 WebStorm で検査すると、クラス (paper-input
クラスです) にはメソッドが含まれていません。inputAction
ただし、メソッドがイベントを発生させたと仮定すると、inputAction
メソッドを簡単に使用できますdispatchEvent
。ただし、オブジェクト自体を変更せずにイベントをトリガーするイベントはどれですか? そして、ブラウザーをクラッシュさせないことは素晴らしいことです (Aw, snap!
いくつかのイベント テストで、Chrome のブルー スクリーン オブ デスで Web ページをクラッシュさせました)。