Đây là một số các lớp trong ứng dụng JavaScript của tôi:Tiêm phụ thuộc trong JavaScript? (Đối với dữ liệu-driven trực quan)
myApp.mode.model Handles the state
myApp.mode.controller Instantiates and updates components based on the model
myApp.data.dataManager Does operations on the dataSource
myApp.data.dataSource A big singleton with structured data
myApp.chart.grid A grid component
myApp.chart.scatter A scatter gram renderer
myApp.chart.tooltip A tooltip renderer
Sự tương tác giữa các thành phần này được phác thảo dưới đây: (Xin lỗi vì sự MINH HOẠ xấu kỹ năng ...;).)
những gì tôi đang tìm kiếm là một cách sạch sẽ để vượt qua các đối số cần thiết (quản lý phụ thuộc) để các tiểu hợp phần của bộ điều khiển Visualization:
Hãy nói rằng người dùng thay đổi một chỉ báo trong màn hình Visualization . Mô hình yêu cầu trình quản lý dữ liệu tải dữ liệu cần thiết.
Khi dữ liệu được nạp, bộ điều khiển trực quan tìm hiểu về sự thay đổi mô hình và sẽ cập nhật các thành phần tương ứng của nó: Lưới, Scatter, Tooltips, vv
Các Lưới cần biết những thứ như xmin, xmax, chiều rộng, chiều cao ...
"Trình kết xuất phân tán" cũng cần xMin, xMax, chiều rộng, chiều cao. Ngoài ra, nó cần truy cập vào dữ liệu lớn đơn và nó cần phải tìm ra những phần của dữ liệu để vẽ.
Ba câu hỏi:
Làm thế nào để vượt qua các nguồn dữ liệu cho các renderer Scatter? Tôi có khai báo hay vượt qua nó?
Nhiều thành phần quan tâm đến dữ liệu có sẵn để vẽ. Trình quản lý dữ liệu có thể trả lời truy vấn này. Nếu "dataAvailability" được chuyển tới trình kết xuất đồ họa Scatter hay nó sẽ thay thế toàn bộ trình quản lý dữ liệu dưới dạng phụ thuộc?
Nhìn vào bản vẽ sơ đồ, bạn sẽ đặt các đối tượng sao cho trạng thái mới (chỉ số mới, năm, lựa chọn, chiều rộng, chiều cao) dễ dàng truyền qua tất cả các đối tượng phụ?
Cảm ơn :)
Bạn đang sử dụng một khung hoặc thư viện JS cụ thể? Một số người trong số họ có các tính năng giúp chính xác với loại công cụ này. – hugomg
Vì có vẻ như bạn đã viết khá nhiều mã, đây không phải là câu trả lời, nhưng bạn có thể xem xét backbone.js cho các dự án kiểu JS MVC trong tương lai –
Tôi không thấy một bộ điều khiển tương tác với mô hình của bạn ... trừ khi myApp.mode.controller này là bộ điều khiển trực quan hóa –