2011-06-25 34 views
5

Tôi sử dụng node.js ở phía máy chủ, express.js và ngọc bích. Tôi đã viết một hàm bao bọc nhỏ để điền vào các mẫu ngọc bích ở phía máy khách. Tôi nghĩ rằng tôi sẽ sử dụng requireJS và jQuery ở phía khách hàng, nhưng vẫn chưa quyết định. Bây giờ, nhiệm vụ mà tôi phải làm nhiều lần làMột khuôn khổ JS phía máy khách với các mẫu và bộ nhớ đệm?

  • lấy mẫu (từ máy chủ hoặc bộ nhớ cache)
  • lấy dữ liệu từ máy chủ
  • điền vào mẫu và chèn nó vào/thay vì một yếu tố

Lưu ý: có rất nhiều công cụ tạo mẫu và câu hỏi của tôi không phải về một công cụ mẫu, mà là về quy trình làm việc dễ dàng.

tôi phải làm điều đó theo cách này:

var get_data = function (tpl) { 
    $.get(url, function(data) { 
     $('#target_element').html(jade.render(tpl, {locals: data})); 
    }); 
}; 

if (!'template_name' in _cache) { 
    $.get('template_name', function(tpl) { 
     _cache['template_name'] = tpl; 
     get_data(tpl); 
    }); 
} 
else { 
    get_data(_cache['template_name']); 
} 

(trong ví dụ này, các mẫu và các dữ liệu được lấy đồng bộ, mà không phải là đẹp)

Tôi muốn có một mã số như thế này:

render_template('template_name', 'url?arguments=values', {replace: '#element_id'}); 

(nó tương tự như MongoDB cú pháp)

Có một khung công tác đơn giản hay một mô-đun jquery để thực hiện công việc này không?

+0

Chỉ cần sử dụng bộ nạp asynch của bạn để có được bộ nhớ cache và các mẫu cho bạn. – Raynos

Trả lời

1

Tôi không chắc chắn nếu nó phù hợp với yêu cầu của bạn hoàn toàn, nhưng PURE là một công cụ khuôn mẫu tốt đẹp cho bạn consder:

http://beebole.com/pure/

+0

thú vị, cảm ơn, nhưng không chính xác những gì tôi tìm kiếm. Tôi đã chỉnh sửa câu hỏi chính xác hơn. –

Các vấn đề liên quan