Javascript 删除Reactjs Om组件(ClojureScript)
我正在尝试使用om bootstrap的“pills”导航在网页中创建一个选项卡式窗口系统,单击链接时添加选项卡,单击选项卡上的X按钮时删除选项卡 我需要知道如何从全局状态/存储中添加和删除数据,以及如何创建一个宏,该宏可用于声明tab app组件,并使其在不再活动时自行删除Javascript 删除Reactjs Om组件(ClojureScript),javascript,clojure,reactjs,clojurescript,om,Javascript,Clojure,Reactjs,Clojurescript,Om,我正在尝试使用om bootstrap的“pills”导航在网页中创建一个选项卡式窗口系统,单击链接时添加选项卡,单击选项卡上的X按钮时删除选项卡 我需要知道如何从全局状态/存储中添加和删除数据,以及如何创建一个宏,该宏可用于声明tab app组件,并使其在不再活动时自行删除 引用全球状态的最佳方式是什么当组件关闭时,我如何使其自身移除/卸载?由于移除子组件会影响其所有者,因此您应该让所有者(即“选项卡系统”)知道此选项卡需要关闭/销毁/删除 我在()中进行了深入研究,假设您销毁选项卡窗格的过程
引用全球状态的最佳方式是什么当组件关闭时,我如何使其自身移除/卸载?由于移除子组件会影响其所有者,因此您应该让所有者(即“选项卡系统”)知道此选项卡需要关闭/销毁/删除 我在()中进行了深入研究,假设您销毁选项卡窗格的过程与销毁TODO项的过程基本相同。到目前为止,我看不出有什么不对劲。以下是我的发现:
IWillMount
),一个(chan)
(来自core.async
)被写入应用程序状态的:comm
键go
-形式与它出现的块异步处理(其中是一种“类似于阻塞”的操作)。嗯,你可能知道,我没有,仍然在学习CLJS的全部内容
put中完成的代码>使用comm
通道调用,在链接行中获取。放置在那里的事件由(2)中定义的循环处理,该循环根据类型
(伴随关键字)将它们委托给适当的函数
我离ClojureScript专业版还差得远,但我正在学习。因此,如果上面的说法没有道理,这是正常的,意味着我不明白一些事情。如果事实证明是这样的话,让我回到正轨将是非常感激的。这是移除组件和通信的一个很好的例子-显然组件正在被销毁。但是,您只解释了通信。似乎更复杂的操作正在发挥作用。看一看,它将goog.ui IdGenerator包含在@user2491中使用的guid函数中。我看不出这与组件删除的相关性。最重要的是,
(guid)
只在基准测试之外使用一次,而且它会按照它的名字来做。你可能是对的,因为我在任何方面都不是专家,但它似乎对组件删除来说根本不需要core.async,实际上它是通过为每个子组件添加和删除唯一的ID来完成的。例如,我应该能够在父项上有“删除随机子项”按钮,而没有任何子项communication@user2491不,不是为了搬走。我在看一个孩子是如何自我毁灭的。我能想到的最好的办法就是告诉家长“杀了我”,TODOMVC使用了一个渠道。父母就是这样做的<代码>om/transact已定义:只需修改状态树并触发重新呈现。标记
似乎只是一个“唯一事务键”,仅包含有关其功能的描述性信息。没有,这是为了什么,但似乎不是强制性的。