2011-12-29 24 views
12

Các bộ điều khiển trong ember.js có nghĩa là được gắn với các vùng/cảnh quan chính a la iOS, hay nhiều hơn gắn với một tập hợp dữ liệu?Liên quan đến hành vi tiêu biểu của bộ điều khiển trong Ember

Thông thường/khôn ngoan để có một số quan điểm chính gắn với cùng một bộ điều khiển trong ember?

Trong phần chính iOS hoặc các phần của màn hình được gắn với một bộ điều khiển duy nhất. Nếu bạn muốn trình bày một giao diện chính khác, hãy nói một cửa sổ phương thức để tạo một phần tử mới, bạn (thường) có một bộ điều khiển hoàn toàn riêng biệt để quản lý chế độ xem đó và dữ liệu/logic của nó. Trong một cái gì đó như Zend Framework, bạn có bộ điều khiển có thể thực hiện một số bước spinup chung để đảm bảo xác thực, nhưng phần lớn các hành động đóng vai trò của bộ điều khiển trong iOS, xử lý logic và cung cấp dữ liệu cho 1 phần chính hoặc khung nhìn (là trang web, điều này thường kết thúc là toàn bộ trang).

Vai trò điển hình hoặc mẫu được khuyên dùng để sử dụng bộ điều khiển trong ember là gì?

Trả lời

17

Bạn có một vài câu hỏi khác nhau ở đây vì vậy tôi sẽ giải quyết từng câu hỏi một.

Trước tiên, bạn hỏi liệu bộ điều khiển có nên định hướng dữ liệu hay xem định hướng hay không. Theo kinh nghiệm của tôi, cả hai hành vi đều được cho phép. Bộ điều khiển là một cách tuyệt vời để quản lý tập hợp dữ liệu cho ứng dụng của bạn, bao gồm những thứ như lọc và tìm kiếm. Evin Grano đã viết một bài tốt về điều này từ quan điểm SproutCore và hầu hết các khái niệm cũng nên áp dụng cho Ember: http://www.itsgotwhatplantscrave.com/2009/07/30/root-controller-paradigm/. Bộ điều khiển cũng rất thích hợp để kiểm soát trạng thái và hành vi của ứng dụng. Ví dụ, bạn có thể đặt một phương thức trong một bộ điều khiển bị ràng buộc như một thao tác nút ở nơi khác trong ứng dụng của bạn. Tuy nhiên, bạn cũng nên kiểm tra các quốc gia Ember để xem những điều này có phù hợp hơn với kịch bản của bạn hay không.

Thứ hai, bạn đã hỏi về việc liên kết nhiều chế độ xem với cùng một bộ điều khiển. Cá nhân, tôi thấy không có mối quan tâm với điều này miễn là bộ điều khiển duy trì một mục đích riêng biệt. Nếu các khung nhìn có liên quan về mặt logic và chia sẻ trong cùng một trạng thái hoặc dữ liệu thì một bộ điều khiển đơn có ý nghĩa. Nếu bạn tìm thấy bộ điều khiển đang phát triển để trang trải quá nhiều khu vực khác nhau, bạn nên xem xét tách nó thành nhiều bộ điều khiển.

+1

Cảm ơn Peter. Thông tin tốt. Có lẽ tôi sẽ đánh dấu đây là câu trả lời chính xác, nhưng tôi sẽ để nó mở cửa trong một ngày hoặc lâu hơn để xem có ai khác đi vào không. –

+0

Những người quan tâm đến trạng thái ember có thể thấy điều này hữu ích: http://imediava.wordpress.com/2012/08/22/ember-states-routing-tutorial/ – txominpelu

1

Từ kinh nghiệm giới hạn của tôi trong Ember.js, tôi đã điều chỉnh như sau:

  • Quan điểm xử lý hành vi sử dụng liên quan đến những thay đổi trong lớp trình bày, giới hạn ở ví dụ riêng của mình.

  • Trình điều khiển điều hướng/trình thống kê xử lý thao tác phức tạp của những gì được trình bày (thêm nhiều chế độ xem, xóa một số chế độ xem khác, v.v.).

  • Bộ điều khiển phản hồi các hành động của người dùng liên quan đến lớp dữ liệu.

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