2016-05-29 29 views
5

Chúng tôi đang di chuyển ứng dụng Backbone của mình để sử dụng React và Redux. Tôi đang tạo một tính năng mới bằng cách sử dụng React/Redux nhưng nó đòi hỏi một textInputView hiện đang ở trong Backbone. TextInputView này rất cồng kềnh và có chức năng nâng cao ngăn tôi chuyển nó sang React vào lúc này.Làm thế nào để hiển thị khung nhìn Backbone bên trong một thành phần React?

Tôi cần hiển thị chế độ xem Xương sống của tôi và đặt nó làm phần tử bên trong mô-đun Phản ứng của tôi. Ý tưởng của tôi là render khung nhìn Backbone và chuyển nó vào thành phần React. Sau đó, trong thành phần React của tôi, hãy tạo các hàm componentDidMountcomponentDidUpdate sẽ thêm khung nhìn Backbone của tôi theo cách thủ công vào DOM mỗi lần hiển thị phần tử React của tôi.

Tôi nghĩ điều này sẽ hiệu quả nhưng có vẻ lộn xộn. Có giải pháp sạch hơn nào không?

+0

Mục đích chính của React là xử lý hiệu quả hiển thị bằng cách sử dụng DOM ảo. Sử dụng một cái gì đó khác để thực hiện rendering đánh bại mục đích. Bạn nên bỏ qua các bộ sưu tập hoặc mô hình từ Backbone to React, theo ý kiến ​​khiêm tốn của tôi. –

Trả lời

5

Chỉ cần thực hiện nhanh thao tác này vì nó vẫn chưa được trả lời và tôi đang tìm kiếm thông tin tương tự. Tôi nghĩ rằng giải pháp của bạn sẽ hoạt động nhưng có khả năng gây bất lợi về hiệu suất.

Nó không thường được sử dụng, nhưng React có dangerouslySetInnerHTML có thể được sử dụng ở đây. Tôi sẽ chuyển sang chế độ xem như một biện pháp chống đỡ, sử dụng view.$el.html() để truy xuất chuỗi bên trongHTML từ chế độ xem chưa được gắn kết và chuyển cho dangerouslySetInnerHTML. Bạn sẽ phải đảm bảo rằng bất kỳ trình xử lý sự kiện của bạn đúng cách đính kèm và unattach trên render và teardown.

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