2017-06-05 74 views
0

我使用React包裹着cljs +試劑來製作一個小應用程序。我需要的是一個滑塊,可以每秒更新一次,並且可以由用戶進行調整。現在,我使用這個:連續更新的滑塊不能被拖動

[:div.scrubber [:input 
       {:type "range" 
        :min "0" 
        :max "100" 
        :value (str percent-through)}]] 

我調整範圍滑尺每秒的value財產。但是,這似乎阻止了用戶與它的交互。這裏是顯示這個GIF:(對鉻捕獲)

enter image description here

什麼是允許用戶控制滑塊的最佳方式?停止更新計時器沒有任何效果,並且看起來該值被鎖定。

+0

這是無意中重複的'https:// stackoverflow.com/questions/36122034/jsx-react-html5-input-slider-doesnt-work' –

回答

2

是的,如果你有控制定時器,我會取消它,一旦用戶開始與滑塊進行交互,然後更新狀態與他們的更改後,創建一個新的計時器。

+0

我試過,但無濟於事。看起來這裏發生了更深的事情,並且滑塊被鎖定了。 –

+0

嗯,好的。我不太熟悉cljs或reagant,你能否提供每秒更新數值的機制?或者是以某種方式神奇地在背景中處理? –

+0

你基本上可以忽略cljs和試劑部分。這是一個翻譯語言,也是React.js的一個簡單封裝。我的機制是'setInterval',它調用一個事件來更新輸入範圍的當前百分比。但是,我的問題實際上是我使用'價值'。我應該使用'default-value'。這導致範圍永遠不會更新的問題,但...... –