AngularJS - разница между ng-grid и data-ng-grid
Я создал проект ASP.NET MVC 4, используя шаблон AngularJS, доступный для VS2012. На одной из страниц сетка закодирована в виде HTML
<div class="grid-style" data-ng-grid="userGrid">
</div>
Но при поиске проблемы с сеткой я вижу, что люди используют как
<div class="grid-style" ng-grid="userGrid">
</div>
В чем разница между data-ng-grid
а также ng-grid
?
2 ответа
Хотя на этот вопрос уже есть ответ, помеченный как правильный, стоит отметить, что речь идет не о поддержке браузера. data
атрибуты фактически определены в спецификациях XHTML и HTML и, как таковые, являются допустимой разметкой. Это хорошая практика для использования data-ng-*
, но это не из-за соответствия браузера; это для проверки. (В случае HTML, допустимая разметка является предпочтительной. В случае XHTML, допустимая разметка является жизненно важной, иначе страница сломается.)
.NET HTML разметка будет использовать data-ng
атрибут, так что он создает HTML-разметку, которая будет проходить правила проверки. Опять же, это гораздо важнее для XHTML, но все же важно для HTML.
Они фактически одно и то же с точки зрения angularjs. Префикс данных для пользовательских атрибутов более широко поддерживается браузерами. Вы также можете использовать версию класса для директив, которая более широко поддерживается, как показано ниже.
<div class="ng-grid=userGrid">
</div>