1

node.js を使用して最初のアプリを構築しています。

このアプリは、Jade テンプレート エンジンを備えた Web アプリケーション フレームワークとして Express を使用します。

MongoDB データベースから取得した項目のリストを表示する画面を設計する必要があります。

最初に項目データのリストを表示している間、コントローラーからデータが送信され、フォーマットは jade テンプレートで行われます。

ただし、ajax 呼び出しを介してアイテムのリストを更新する必要もあります。

この特定のフローに適したアプローチを設計するのは難しいと感じています。

次のオプションがあります。

  1. ajax レスポンスでアイテムのリストを送信します。
  2. JavaScript を使用して UI コンポーネントをレンダリングします - css クラスを追加し、html を準備します。

しかし、このアプローチは非常に脆弱です。また、多くのコードが Web ブラウザーで公開されます。

私は、組み込み機能であるコンポーネントの再レンダリングを備えた JSF から来ています。

node.js、ajax、再レンダリングを一緒にできますか?

4

3 に答える 3

1

「partialList」のような別のルーターを作成して、リストの HTML のみを配置し、ajax 要求でそのリストに Jade テンプレートを入力してレンダリングすることができます。次に、ブラウザで(jQueryを使用すると仮定して)http://example.com/partialListにリクエストを送信すると、HTMLのみが取得され、その後、.html()メソッドを使用してそのHTMLをリストが必要な場所に配置します.

$.get('http://example.com/partialList', function (listHTML) {
  $('#list-placeholder').html(listHTML);
});
于 2013-12-17T15:52:07.513 に答える
0

短い答えはノーです。ノードはサーバー上にあります。クライアントでレンダリングする必要があります。なんらかの方法で ajax をレンダリングするには、いくつかの js が必要になります。

あなたの代替案は、クライアントを新しいページにリダイレクトし、HTML を希望どおりにレンダリングすることです。これはかなり 1999 年に感じられるでしょう。

于 2013-12-17T15:35:23.713 に答える