2017-09-20 34 views

Trả lời

1

Họ nói rằng bạn không thể ở the first page:

tái khung vẫn là một công việc được tiến hành và nó rơi ngắn trong một vài cách - ví dụ nó không hoạt động cũng như chúng tôi d thích với devcards

+0

Tôi hiểu câu "nó không hoạt động tốt như chúng tôi muốn" vì nó hoạt động ở một mức độ nào đó. – dilvan

3

Đây là vấn đề tái diễn với khung hình lại và ký hiệu. Vấn đề chính là các globals trong re-frame (vấn đề chính là db, nhưng các trình xử lý và các đăng ký có thể là một vấn đề nữa) mà không chơi tốt với ý tưởng render nhiều devcards trên cùng một trang.

Một giải pháp tiềm năng là hiển thị từng devcard bên trong iframe. Mỗi devcard sẽ được tách biệt với nhau, mặc dù chúng được chứa và hiển thị trực quan trong một trang duy nhất. Nó có lẽ không phải là giải pháp hiệu quả nhất, nhưng nó hoạt động: Tôi đã thực hiện nó trong my devcards fork, under the iframe branch. Nó có a couple example devcards using re-frame

Mặc dù nó được xuất bản trong clojars là [org.clojars.nberger/devcards "0.2.3-0-iframe"], nó cần một số công việc để cung cấp một cách thân thiện hơn để tạo thẻ khung nội tuyến và có thể là macro đặc trưng cho khung hình lại. Ngoài ra có thể có một số cạnh thô UI để đánh bóng. Nhưng hãy sử dụng nó. Tất nhiên những đóng góp và phản hồi được hoan nghênh.

Tôi sẽ đưa một ví dụ đây để hiển thị như thế nào để sử dụng nó:

(defcard-rg re-frame-component-initialize-db 
    "This is the same re-frame component, but now using 
    data-atom to initialize the db, rendered in an iframe:" 
    (fn [data-atom _] 
    (setup-example-1) 
    (re-frame/dispatch [:initialize-db @data-atom]) 
    [re-frame-component-example]) 
    {:guest-name "John"} 
    {:iframe true}) 

(ví dụ dựa trên tái khung 0.7.x nhưng tất cả mọi thứ sẽ làm việc cùng với các phiên bản mới hơn vì cơ chế iframe không quan tâm đến việc sử dụng lại khung hoặc bất kỳ thứ gì)

+0

Nó hoạt động tốt. Tuy nhiên, chuỗi 'Test1' xuất hiện khi' defcard-rg' được sử dụng. – dilvan

+1

Chuỗi 'Test1' xuất hiện ở đâu? Bạn có chuỗi đó ở bất kỳ đâu trong mã của bạn không? Cảm thấy tự do để chia sẻ một ý chính hoặc một repo cho thấy vấn đề, tôi có thể mất một cái nhìn – nberger

+0

Quên nó, sai lầm của tôi. Đó là trong mã của tôi. Lấy làm tiếc. – dilvan

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