私のアプリケーションは単一ページのアプリケーションであると想定されており、正常に動作する次のコードがあります。
home.php:
<div id="container">
</div>
アコーディオン.php:
//Click functions: load content
$('#parents').click(function(){
//Load parent in container
$('#container').load('http://www.blabla.com/entities/parents/parents.php');
});
両親.php:
<div class="entity_wrapper">
Some divs and selectors
</div>
<script type="text/javascript">
$(document).ready(function(){
//Some jQuery / javascript
});
</script>
したがって、コンテンツは正常にロードされますが、動的にロードされたスクリプトも正常に実行されます。
このシステムを繰り返し適用すると、スムーズに機能し続けます。
SPA で利用可能なフレームワーク (backbone.js など) がたくさんあることを見てきましたが、これがうまく機能するのになぜそれらが必要なのかわかりません。
backbone.js Web サイトから:
多くの JavaScript を使用する Web アプリケーションで作業する場合、最初に学ぶことの 1 つは、データを DOM に結び付けることをやめるということです。HTML UI、JavaScript ロジック、およびサーバー上のデータベース間でデータの同期を必死に維持しようとする、jQuery セレクターとコールバックの絡み合った山となる JavaScript アプリケーションを作成するのは非常に簡単です。リッチなクライアント側アプリケーションの場合、より構造化されたアプローチが役立つことがよくあります。
まあ、私は彼らが言及していることを経験しているという感覚はまったくありません.
ページごとにJavaScriptを追加することは、私にとって非常にうまく機能します。
それらは明確な範囲を持つ html コンテナーであり、javascript はその部分に関連しています。
さらに、私の場合、フロントエンドはそれほど多くのことを行うわけではありません。ほとんどのロジックは、外部 PHP スクリプトへの Ajax 呼び出しに基づいて管理されています。場合によっては、一部の機能のために js をもう少し拡張することもできますが、すべてが 1 秒もかからずにスムーズに読み込まれます。
これが悪いコーディングだと思われる場合は、なぜ私がこれを行うことができないのか、さらに重要なこととして、私が適用すべき代替手段は何かを教えてください. 現時点では、うまく機能しすぎているため、このアプローチを変更する理由がわかりません。
私はこの質問に行き詰まっています。なぜなら、あまりにも簡単に真実であるとは思えないので、気分が悪いだけだからです。これほど簡単にできるのに、なぜ人は苦労するのでしょうか...
Juhanaのコメントに基づいて質問を編集しました:
自分のプロジェクトが Backbone の用途に合っているとは思えません。とにかく使うべきですか?