Я недавно узнал, что angular js вы можете сказать разницу между ng-model и data-ng-model
<!--
First Name : <input type="text" ng-model="fname" id="fname">
Second Name : <input type="text" ng-model="lname" id="lname">
-->
Ответ 1
Лучшая практика. Предпочитаете использовать формат с разделителями тире (например, ng-bind для ngBind). Если вы хотите использовать инструмент проверки HTML, вместо этого вы можете использовать версию с префиксом данных (например, data-ng-bind для ngBind). Другие формы, показанные выше, принимаются по унаследованным причинам, но мы советуем вы, чтобы избежать их.
Ответ 2
в то время как оба ng-model и data-ng-model будут работать, HTML5 ожидает, что любой пользовательский атрибут будет префикс data-.
Они одинаковы. Angular разделяет часть data- на атрибут. Из документов:
Angular нормализует тег элемента и имя атрибута, чтобы определить, какие элементы соответствуют директивам... Процесс нормализации выглядит следующим образом:
Strip x- и data- с передней стороны элемента/атрибутов.
Преобразуйте :, - или _ -delimited name в camelCase.
Ответ 4
Нет никакой разницы между ng-model и data-ng-model.
Фактически, "данные" используются в качестве префикса для проверки проверки HTML5. Таким образом, рекомендуется использовать data-ng-model, однако вы также можете использовать ng-model. В этом нет никаких проблем.