リスト ページがあり、ページのレンダリングに vue の v-for が使用されているとします。
つまり、ページがロードされると、v-for のデータがページのロード時に ajax 経由でリクエストされます。
または、データはバックエンド プログラムによってループアウトされますか?
次のようなもの:
<p id="data">
<テーブルクラス="テーブルテーブル-ストライプテーブル-ホバー">
<tr v-for="データ内の Todo">
<td>{{todo.title}}</td>
<td>{{todo.learn_name}}</td>
<td>{{todo.is_exist}}</td>
<td>{{todo.is_download}}</td>
</tr>
</テーブル>
</p>
var data = new Vue({
el:'#データ',
データ:{
データ:[
<?php foreach ($data as $value):?>
{
タイトル: '<?php echo $value["title"]?>'
learn_name: '<?php echo $value["learn_name"]?>',
is_exist: '<?php echo $value["is_exist"]?>',
is_download: '<?php echo $value["is_download"]?>'
}、
<?php endforeach;?>
】
}
});
过去多啦不再A梦2017-05-16 13:03:06
上記で行ったことには何も問題はありません。
しかし、最初のロードの問題について言及したので、もう少しお話します。
ページはすべて PHP によって直接レンダリングされているようです。そのため、最初のページのデータをキャッシュに直接出力すると、最初の Ajax リクエストが保存され、データが直接レンダリングされ、読み込み速度が向上します。最初の画面
SEO を考慮する必要がある場合は、ページが最初に読み込まれるときに php を使用して HTML 構造を直接出力し、その後のページめくりリクエストには vuejs の v-if
与 v-else
ロジックと組み合わせた ajax を使用することも検討できます。
为情所困2017-05-16 13:03:06
Vue を使用しているので、バックエンド ループはもう使用しないでください。Vue はデータ駆動型であるため、これらのデータ処理と表示の問題は Vue に任せてください。
天蓬老师2017-05-16 13:03:06
バックエンド機能をAPI化し、Vueを使ってフロントエンドを呼び出すことができます。混ぜる必要はありません。
vue するにはいじめが多すぎるため、データを取得できません。
phpcn_u15822017-05-16 13:03:06
初めてロードするときにデータを取得し、作成したメソッドでアンロードするためにvue-resource
を使用します。
html:
js:
リーリー