私はAngularJSを初めて使用し、Jqueryで行っていたことを行うためにいくつかのカスタムAngularディレクティブを作成していますが、「角度のある方法」で行っているかどうかわからない場合が1つあります"。それはうまくいきますが、もっと良い方法があるかもしれないと思います。
私がやりたいのは、検索ボックスのためにこれです:
フォーカスが検索ボックスにある場合、アプリはボックス内のテキストの色を灰色から黒に変更する必要があります。アプリは、ボックス内の現在のテキストもチェックする必要があります。それがデフォルトのテキストである場合、アプリはテキストをクリアする必要があります。
ボックスがフォーカスを失った (ぼかした) 場合、アプリはボックスのテキストを灰色に戻す必要があります。次に、フォーカスを失ったときにテキスト ボックスが空の場合にのみ、既定のテキストを戻す必要があります。
これは、これらすべてを完全に実行するように設定されたディレクティブを持つ jsfiddle です。 http://jsfiddle.net/Rick_KLN/5N73M/2/
しかし、私はそれを行うためのさらに良い方法があると思います。
コントローラー内のこれら 3 つの変数はすべて不要なようです。また、if、else ステートメントが 4 つあるように思えます。フォーカスとブラーのみが使用され、if ステートメントで指定されているため、すべてのイベントへのバインディングはやり過ぎです。
このディレクティブの最適化に関するアイデアはありますか?