おそらくこれはこれを尋ねるのには良い場所ではありませんが、私は可能な限り客観的かつ責任あるものにしようとします。角度とセマンティックマークアップ/懸念の分離
私は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潜在見つける1:<a href="" ng-click="archive()">archive</a>
。
ジェフリーゼルドマンがDesigning With Web Standardsと書いたとき、マークアップ(HTML)、プレゼンテーション(CSS)、インタラクション(JS)をメンテナンスのために別々のファイルに分けることがベストプラクティスとなりました。
私の質問は、Angularはそれをどう違反しないのですか?私は実際にそれを楽しんでおり、それを非常に強力なものにしていますが、マークアップのようなクリックイベントをa
要素にバインドすることと、Web標準コードのこの痕跡を書くことの違いは何ですか:
<a href='#' onClick='showAlert()'>Click here</a>
<script>
var showAlert = function(){
alert('hey');
}
</script>
役に立つ答えは、フレームワークの使用に関する個人的な経験に加えて、ドキュメントを参照する場合があります。
最初の考えは、jQueryとセマンティックマークアップを使用して状態を保存する単一のページアプリケーションを作成し、コードの量、より簡単で角度のあるコードとコードの断片化 - 角度がはるかに小さくなりました。モジュラリティとメンテナンスの容易さまたは強化...角度がはるかに簡単です。トレードオフは、懸念事項の一部を組み合わせる価値があります。IMO – charlietfl
Youre right、これはこの質問の正しい場所ではありません。それは概念的な質問のように思え、それらはhttp://programmers.stackexchange.com/に属しています。 – qodeninja