我想知道是否有更好的方法在远程组件之间进行通信。在我的情况下,我有这样的结构:
Sub Test()
Dim DOD As New Dictionary
Dim InnerDict As Dictionary
'create one inner dictionary
Set InnerDict = New Dictionary
InnerDict.Add "A", 1
InnerDict.Add "B", 2
'add it to the dictionary of dictionaries
DOD.Add "dict1", InnerDict
'create another inner dictionary
Set InnerDict = New Dictionary
InnerDict.Add "A", 3
InnerDict.Add "B", 4
InnerDict.Add "C", 5
'add it to DOD
DOD.Add "dict2", InnerDict
'access like:
Debug.Print DOD("dict1")("A") 'prints 1
Debug.Print DOD("dict2")("A") 'prints 3
'can add new keys to inner dicts:
DOD("dict1").Add "C", 10
Debug.Print DOD("dict1")("C") 'prints 10
End Sub
我需要将 TagBoxItem 中的一些数据发送到历史记录(在TagBoxItem onClick操作中会将新项目添加到历史记录中)。最简单的解决方案是只进行一些回调并将一步一步的数据从TagBoxItem传递到主div,然后将其传递给History。但这真的是最好的方法吗?
答案 0 :(得分:3)
这是探索Flux模式的有效案例。您将通过TagBoxItem中的操作创建者启动操作,通过调度程序将其传播到History Store。在历史记录存储更改中,您将重新呈现历史记录组件。
类似于Flux,还有Redux状态容器,目前引起了很多关注。重要的区别在于您将所有状态保存在单个商店中而不是多个商店,您将为您的案例创建历史记录减少器。浏览the Gist了解更多详情。
答案 1 :(得分:1)
答案 2 :(得分:1)
我自己是少数不喜欢流动的人之一。虽然我尝试了反流,原始通量,但我只是想要更简单的东西,还有其他学习/调试,所以我有Rxjs代替。看一下这篇文章