增加遍历节点，修改Observer部分结构