Tôi có một số giao diện người dùng bên ngoài với trừu tượng các thành phần phản ứng và tôi muốn sử dụng lại chúng từ thuốc thử, có cách nào trực tiếp hiển thị thành phần phản ứng được xác định trước chỉ bằng cách truyền dữ liệu từ clojurescript. Tôi là một người mới bắt đầu sử dụng clojurescript.sử dụng thành phần phản ứng trước từ thuốc thử?
9
A
Trả lời
16
Hãy thử! Chúng ta có thể bắt đầu bằng cách viết thành phần trong một tệp js.
var CommentBox = React.createClass({displayName: 'CommentBox',
render: function() {
return (
React.createElement('div', {className: "commentBox"},
this.props.comment
)
);
}
});
Sau đó, chúng ta có thể gọi nó là trực tiếp từ thuốc thử:
(defonce app-state
(atom {:text "Hello world!"
:plain {:comment "and I can take props from the atom"}}))
(defn comment-box []
js/CommentBox)
(defn hello-world []
[:div
[:h1 (:text @app-state)]
[comment-box #js {:comment "I'm a plain React component"}]
[comment-box (clj->js (:plain @app-state))]])
(reagent/render-component [hello-world]
(. js/document (getElementById "app")))
Chú ý rằng chúng ta đang đi qua các đạo cụ để các CommentBox
cả như js đồng bằng đối tượng bằng cách sử dụng #js
và bằng cách chuyển đổi các nguyên tử để js đồng bằng clj->js
. Trong trường hợp tôi bị mất một cái gì đó, bạn có thể tìm thấy phần còn lại trong gist.
Các vấn đề liên quan
- 1. Thành phần thử nghiệm sử dụng điều hướng phản ứng với Jest
- 2. Sinon.js - stub Chức năng của thành phần phản ứng trước khi thành phần được khởi tạo?
- 3. Cách lấy giá trị từ một hàm phản ứng trong một thành phần phản ứng
- 4. Phản ứng router không render thành phần
- 5. jQuery trong thành phần phản ứng
- 6. phản ứng: Gọi phương thức của thành phần con từ thành phần gốc
- 7. Tạo thành phần phản ứng động
- 8. Phản ứng tự nhiên: cách nhập/sử dụng các thành phần thử nghiệm RC, tức là SwipeableRow (0,27 rc)?
- 9. Thử nghiệm đơn vị phản ứng thành phần tạo ra các cuộc gọi ajax bằng cách sử dụng JEST
- 10. Lỗi khi sử dụng thành phần được thực hiện với phản ứng, redux và phản ứng-redux và xây dựng với webpack trong ứng dụng phản ứng
- 11. Cách chính xác để tải trước dữ liệu thành phần theo phản ứng + redux
- 12. động Rendering một Phản ứng thành phần
- 13. Thử nghiệm thành phần Angular2 sử dụng setInterval hoặc setTimeout
- 14. Sử dụng Module CocoaPods trong Thành phần giao diện người dùng tùy chỉnh phản ứng gốc
- 15. Phản ứng: Sử dụng thành phần này.props.children hoặc pass như các đạo cụ có tên
- 16. truy cập phần tử gốc của phản ứng thành phần
- 17. Phản ứng thành phần văn bản Android gốc phản ứng đệm bổ sung
- 18. Clojurescript, Thuốc thử: chuyển nguyên tử xuống dưới dạng đầu vào hoặc sử dụng làm biến toàn cầu?
- 19. Ngăn thành phần phản ứng khỏi hiển thị hai lần khi sử dụng redux với componentWillMount
- 20. Giữ các thành phần giữa các tuyến đường bằng cách sử dụng phản ứng-router
- 21. Chuỗi HTML động để phản ứng thành phần
- 22. mẹo để tạo thư viện thành phần cho các thành phần góc/phản ứng
- 23. Là các dạng thuốc thử có nghĩa là sử dụng với khung hình lại?
- 24. thông qua "khóa" param để phản ứng thành phần
- 25. Phản ứng sự kiện onClick trên thành phần
- 26. Khi nào tôi nên sử dụng getInitialState trong một Phản ứng thành phần
- 27. Các thành phần thùng chứa phản ứng-redux tái sử dụng
- 28. Không thể sử dụng các hàm Arrow bên trong lớp thành phần phản ứng
- 29. Phác đồ phản ứng-router-dom phản ứng với thành phần
- 30. Phản ứng các thành phần chức năng và các thành phần cổ điển
Chỉ cần thêm vào đây, có thêm một chút thông tin về phía dưới cùng của trang này: https://reagent-project.github.io/news/news050.html – Dan