Возможно, это нехорошее место, чтобы спросить об этом, но я постараюсь сделать его максимально объективным и ответственным.Угловая и семантическая разметка/разделение проблем
Я играю с Angular.js и очень люблю его, но у меня есть вопрос о его философии. Вот фрагмент кода с сайта Angular для контроллера.
<div ng-controller="TodoCtrl">
<span>{{remaining()}} of {{todos.length}} remaining</span>
[ <a href="" ng-click="archive()">archive</a> ]
<ul class="unstyled">
<li ng-repeat="todo in todos">
<input type="checkbox" ng-model="todo.done">
<span class="done-{{todo.done}}">{{todo.text}}</span>
</li>
</ul>
<form ng-submit="addTodo()">
<input type="text" ng-model="todoText" size="30"
placeholder="add new todo here">
<input class="btn-primary" type="submit" value="add">
</form>
</div>
Это в основном HTML
с угловыми директивами посыпают в один, что я считаю потенциально susupect это:. <a href="" ng-click="archive()">archive</a>
.
Когда Джеффри Зельдман написал Designing With Web Standards, стало лучшей практикой отделить разметку (HTML), презентацию (CSS) и взаимодействие (JS) в разные файлы для удобства обслуживания.
Вопрос в том, как Угловая не нарушает это? Я действительно наслаждаюсь этим и считаю его достаточно мощным, но в чем разница между привязкой события click к элементу , подобным этому в разметке, и написанием этого перечня кода, предшествующего веб-стандартам:
<a href='#' onClick='showAlert()'>Click here</a>
<script>
var showAlert = function(){
alert('hey');
}
</script>
Полезные ответы могут касаться документации в дополнение к личному опыту использования фреймворка.
Сначала подумал, что нужно создать приложение для сохранения одной страницы с использованием jQuery и семантической разметки и сравнить количество кода, времени и головных болей в том же приложении, написанном с угловым ... тестированием? Гораздо проще в угловом .... количество кода и фрагментации кода - гораздо меньше в угловом. Модульность и простота обслуживания или улучшения ... намного проще в угловом. Сделка стоит того, чтобы сочетать опасения. IMO – charlietfl
. Правильно, это не подходящее место для этого вопроса. Это больше похоже на концептуальный вопрос, и это относится к http://programmers.stackexchange.com/ – qodeninja