【发布时间】:2017-03-31 07:10:40
【问题描述】:
我正在尝试在 ClojureScript(带试剂)中创建睡眠功能:
(ns cljweb.webpage
(:require [reagent.core :as reagent]))
(def temp-atom (reagent/atom 0))
(defn sleep [msec]
(js/setTimeout (fn []) msec))
(defn page []
[:div
[:p @temp-atom]
[:button
{:on-click
(fn []
(sleep 3000)
(swap! temp-atom inc))}
"Click me!"]])
由于某种原因,它无法正常睡眠 - 当我单击“点击我!”时按钮,temp-atom 立即递增 - 当我计时时,将其放在 page 之后:
[:p (time (sleep 3000))]
我在控制台中得到了这个:
"Elapsed time: 0.015000 msecs"
我在代码中做错了什么?
【问题讨论】:
标签: clojure clojurescript reagent