2017-07-02 50 views
0

我使用的是RailswebpackerreactRails - React組件在第二頁加載時不會被安裝

我加載我的部件,如這在我的視圖文件:

<div id="mycomponent"></div> 
<%= javascript_pack_tag 'components/mycomponent' %> 

mycomponent,我有:

document.addEventListener('DOMContentLoaded',() => { 
    ReactDOM.render(
    <MyComponent />, 
    document.getElementById('mycomponent'), 
) 
}) 

所以在初始頁面加載,mycomponent安裝。
但是當我訪問另一個頁面時,回擊或點擊指向儀表板的鏈接(在這種情況下),組件不會加載。必須刷新才能加載它。

我認爲它與Rails正在使用的一些緩存技術有關?
如何獲得組件的每個請求加載

+0

爲什麼你需要這個? 'DOMContentLoaded' –

+0

將組件掛載到'DOMContentLoaded'。 – resting

+0

是的,但不會因爲你正在執行容器元素後的js –

回答

0

因此turbolinks正在做一些優化背後。

認識到鉻檢查器中的url在我換頁時保持不變。

頁從app/assets/javascript/application.js除去//= require turbolinks後完全加載

看到有人指着jquery.turbolinksonload問題turbolink。雖然沒有測試過。

相關問題