问题标签 [om]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
clojure - 如何将 Hickory 与 Clojurescript (OM/Reagent) 一起使用?
在我的 Reagent 项目中,我使用 Hickory 解析 HTML 并呈现一个 Hiccup 页面。打嗝被渲染。但是当我更改页面(!reset my view atom)时,React.js 变得疯狂,因为 Hickory 生成了:
[:div (as-hiccup (parse "<h1>HELLO WORLD!</h1>"))]
=> ([:html {} [:head {}] [:body {} [:h1 {} HELLO WORLD!]]])
如您所见,它生成<html>
<head>
<body>
了我认为导致 Reactjs 崩溃的标签,因为我的视图已经有了这些标签。理想情况下,我希望它只生成[:h1 {} HELLO WORLD!]
javascript - 当我刷新我的试剂页面时,Firebase 数据不可用,因此出现异常
我有一个试剂,可以在单击后退和前进按钮时在所有页面上工作。但是,当页面被刷新时,它会引发异常。
我的应用从 Firebase 和sets
一个原子中获取数据。然后随着 UI 的渲染。视图从 atom 中获取数据并呈现 UI。
但是当我刷新时,似乎页面是在我的 Atom 被 Firebase 填充之前呈现的,这会导致异常,因为数据尚不可用。
注意:当我只刷新页面(println clicked-job uid)
而不渲染标记时,println
运行两次,第一次返回nil
,第二次返回数据。
任何有助于正确刷新页面的帮助!
javascript - 如何在 Clojurescript 中的 Date 对象上调用 .toDateString()
我正在尝试在 Clojurescript 中获取 DateString:new Date(1420971497471).toDateString();
我遇到了麻烦,因为(js/Date 1420971497471)
返回一个字符串,所以我不能调用.toDateString()
.
这是我的 Clojurescript 代码:
clojurescript - 有没有办法在不使用匿名函数的情况下在 Om 中创建 onClick 处理程序?
我想为 Om 组件创建一个单击处理函数。我发现的文档和堆栈溢出示例总是像这样声明匿名函数
我认为在组件内的 jsx/模板区域之外声明 click 函数会更干净,就像在常规 React 中通常所做的那样。有没有办法在组件内的 Om 中做到这一点?我试过这个,但它不起作用,因为 onClick 未定义:
如果可能的话,我想避免在组件之外定义一个单独的函数。
reactjs - 使用 Om 有条件地将类添加到元素
在 Om 中,有没有办法根据主应用程序原子中的某个值向元素添加类?
以以下元素为例:
如果我以某种方式在真假之间切换值:some-key
,则不会添加或删除该类。on page load的值:some-key
决定是否添加该类。
我正在使用这个想法根据我的应用程序状态hide
中的键值有条件地显示/隐藏(使用 Twitter Bootstrap 的类)菜单选项::access
clojurescript - 在 Om 应用程序中正确操作状态时遇到问题
我在操作 Om 应用程序中的状态时遇到问题。具体来说,我不知道如何从列表中删除项目。
这是我愚蠢的证明。这是一个被破坏的简化应用程序。https://gist.github.com/rerb/29d10959e71ba1e31e8e
显示两个按钮。按下时,它们应自行移除。
删除第一项后,尝试删除第二项时出现此错误:
如果我先删除第二个,则在尝试删除第一个时会出现此错误:
我错过了什么简单的事情?我是爱因斯特伦。
javascript - 如何在 Clojurescript 中循环一个 JavaScript 对象并将每个对象推入一个数组
如何将这个函数(转换为 Clojurescript)转换为接受 JavaScript 对象并将其内容推送到数组中。
clojurescript - 在 Om 中传递 App Atom 与 Ref-Cursors
使用 Om,似乎将应用程序状态的相关部分传递给子组件实际上与不传递任何应用程序状态但使用引用游标相同。引用游标将应用程序状态的各个部分沿链向下传递的用例是什么?
我已经阅读了 Om github 存储库上的所有三个教程和概念概述,但我真的找不到这个问题的答案。似乎一个人可以使用其中一个或另一个来完成同样的事情(一个要么定义一个组件(defn blah [_ owner] ...)
并使用 ref 游标,要么定义一个组件(defn blah [relevent-state owner] ...)
有人可以澄清我何时想在组件内使用 ref 光标,而不是简单地将应用程序状态的一部分传递给该组件吗?
web-applications - ClojureScript & Om:编写 document.hash 的最佳实践
我有一个“你好,世界!” 使用 Om(从“Chestnut”lein 模板生成)在 ClojureScript 中的应用程序。
目标是使其设置为:
- 该
document.location.hash
值反映了(:route app-state)
向量的变化。 (:route app-state)
矢量反映了值的变化document.location.hash
。(:route app-state)
应用程序在更改时重新呈现。
请注意,我打算将(:route app-state)
向量作为应用程序当前状态的唯一真实来源。更改它的一种机制是用户修改 url。
我应该在哪里以及如何将此行为附加到 Om?
这是我的“你好,世界!” 应用程序。
这成功地写入了document.hash
页面加载。最终这将是一个使用哈希导航来更改视图的单页应用程序。
(render )
这对我来说感觉很脏,因为必须在函数中返回一个 DOM 元素,update-location-hash
除了满足函数的要求之外没有任何目的render
。