2011-09-15 7 views
1

私はプロジェクトを持っており、レンダリングされたHTMLをAJAX呼び出しで送り返す必要があります。 res.render('myview', {...});を使って、完全にレンダリングされたHTMLとしてデータを戻すことができます。しかし、私はページの3つの部分をレンダリングしなければならず、3つの部分すべてを1つのレスポンスにカプセル化したいと考えています。Expressのビューのさまざまな部分を組み立てて返送するにはどうすればよいですか?

このようにすれば、おそらく2つのオプションのいずれかが表示されます。ビューをレンダリングして送信できない場合は、res.writeを使用してすべてのビューを送信するか、3つの異なるAJAX呼び出しを行うことができます。私は最初のものを好むだろう。どのように始めるためのアイデアですか?

+1

必要なものは部分的な表示です – jcolebrand

答えて

0
res.header 'Content-Type','application/json' 
    res.partial 'partials/categories', {categories: categories}, (err, categoriesHtml) -> 
    res.partial 'partials/items', {items: items}, (err, itemsHtml) -> 
     htmlResponse = 
     categories: categoriesHtml 
     items: itemsHtml 
     htmlResponse = JSON.stringify htmlResponse 
     res.send htmlResponse 

部分的です!

関連する問題