12

これは私にとってはうまくいきます(サーバー側の検証の例):

AngularJS: サーバー側の検証との統合

しかし、追加の質問をすることにしました。

その例では、unique-emailディレクティブを使用します。

<input type="email" ng-model="userEmail" name="userEmail" required unique-email/>

しかし、ディレクティブを作成するときは、uniqueEmailを使用します:

app.directive('uniqueEmail', function($http) { ..

なんで?名前の命名規則/規則に何らかの関係がありますか? angular はどのようにしてどこを見ればいいのか、どのように接続するのかを知ることができますか?

私が使ったとき<input ... required uniqueEmailはうまくいかなかったので、私はただ疑問に思っています。「unique-email」と入力するまで

次のように入力しても同じです:

app.directive('unique-email', function($http) {

入力するまで機能しませんuniqueEmail

したがって、ディレクティブを使用するときと定義するときに、1 つのスタイル名を使用する機会はありません。

4

2 に答える 2

5

タグと属性に小文字のみを使用するのは、HTML の規則です (HTML5 では大文字と小文字が区別されないためです。class="" は ClaSS="" と同じです)。Angular は、ディレクティブ名を小文字に制限したくありませんでした。そのため、Angular 内で大文字を使用できるようにし、それらの名前を html 標準のスネーク ケースに変換します。

そのため、HTML 命名基準に準拠しながら、Angular で命名の柔軟性と読みやすさが向上します。

小文字の名前のみを使用する場合は、名前の変換について心配する必要がないことに注意してください。もちろん、Angular コードの可読性が犠牲になる可能性があります。

于 2013-10-21T19:52:55.047 に答える