我想在我的卤素UI中使用几个到moment.js的绑定来呈现时间跨度,它们的类型类似于
diffMins :: forall eff. Moment -> Moment -> Eff (now :: NOW | eff) Number如果我想在UI中使用这个函数,如下所示:
H.span_ [H.text $ diffMins (fromEpoch_ 0) (fromEpoch_ myTimeStamp)]但这是在Eff中,所以我不能。
我能做的就是用这个函数调用moment:
js:
exports.duration_ = function (millis) {
return moment.duration(millis).humanize();
};ps:
foreign import duration_ :: Number -> String
humanizeMilliseconds :: Milliseconds -> String
humanizeMilliseconds (Milliseconds n) = duration_ n那么我的问题(或几个):
调用javascript而不说它是一个Eff是不是“作弊”?如果不是,什么时候可以,什么时候不可以?我可以选择任何一种方式,并将这些函数视为副作用或不副作用。
如果我不能改变调用moment的方式,或者这确实是个坏主意,有没有办法在HTML中做到这一点
https://stackoverflow.com/questions/41486585
复制相似问题