Saat ini saya melihat video ini awal tutorial untukangular.js
Pada suatu saat (setelah 12'40 "), pembicara menyatakan bahwa atribut ng-app
dan data-ng-app=""
kurang lebih setara di dalam <html>
tag, dan begitu juga ng-model="my_data_binding
dan data-ng-model="my_data_binding"
. Namun pembicara mengatakan html akan divalidasi melalui validator yang berbeda, tergantung pada atribut mana yang bekas.
Bisakah Anda menjelaskan perbedaan antara dua cara, ng-
awalan terhadap data-ng-
awalan?
Jawaban:
Pertanyaan bagus. Perbedaannya sederhana - sama sekali tidak ada perbedaan di antara keduanya kecuali bahwa validator HTML5 tertentu akan membuat kesalahan pada properti seperti
ng-app
, tetapi mereka tidak melempar kesalahan untuk apa pun yang diawali dengandata-
, sepertidata-ng-app
.Jadi untuk menjawab pertanyaan Anda, gunakan
data-ng-app
jika Anda ingin memvalidasi HTML Anda menjadi sedikit lebih mudah.Fakta menyenangkan: Anda juga dapat menggunakan
x-ng-app
efek yang sama.sumber
data-
danx-
. Mengapa aturan validasi HTML tidak dapat diubah untuk menerimang-
barang?data-*
atribut adalah cara untuk memperluas HTML .Dari Dokumentasi Angular
berdasarkan pernyataan di atas di bawah ini semua adalah arahan yang valid
1. ng-bind
2. ng: bind
3. ng_bind
4. data-ng-bind
5. x-ng-bind
sumber
Perbedaannya terletak pada fakta bahwa
data-*
atribut khusus valid dalam spesifikasi HTML5 . Jadi, jika Anda perlu markup Anda untuk divalidasi, Anda harus menggunakannya daripadang
atribut.sumber
Jawaban singkat:
ng-model
dandata-ng-model
sama dan setara!Mengapa?
alasan untuk: spesifikasi HTML5
data-
awalan mengharapkan setiap atribut khusus diawali oleh .data-
alasan untuk: keduanya
ng-model
dandata-ng-model
sama dan setara.sumber
Anda dapat menggunakan data-ng-, bukannya ng-, jika Anda ingin membuat halaman HTML Anda valid.
sumber
jika Anda ingin memanipulasi html atau html-fragmen di server Anda sebelum menyajikannya ke browser, Anda pasti ingin menggunakan atribut data-ng-xxx bukan hanya atribut ng-xxx.
sumber