我正在尝试呈现如下数据-
def nativeTypeoneByOne(to_type,snooze_in_between=0.1):
for c in to_type:
snooze(snooze_in_between)
nativeType(c)
我正在使用递归调用来呈现组件,如下所示-
{
"operator" : "and","expression": [
"a==1","b>=2"
],"groups": [
{
"operator" : "or","expression": [
],"groups": [
{
"operator" : "or","expression": [
"c!=3","d==4"
],groups: null
}
]
},{
"expression": [
"p<90",],groups: null
}
]
}
其中组件const ParseInnerConditions = ({expression,groups,operator}) => {
const consolidatedChildren = [...expression,...groups];
const childrenComponents = consolidatedChildren.map((child,index) => {
if (child instanceOf Object) {
return (
<ConditionGroup
key={`group_${index}`}
>
<ParseInnerConditions {...child} />
</ConditionGroup>
);
}
return (
<Expression
key={`expression_${index}`}
expression={child}
/>
);
});
return <div>{childrenComponents}</div>;
};
}
是表单,并且LHS,RHS和中缀运算符可以在该表单中进行编辑。
Expressions
只是具有一些基本样式的div,其中包含ConditionGroup
表单。
问题:
每当我尝试编辑嵌套的Expression
表单时,都会观察到闪烁,并且输入失去焦点。我确定随着值更新Expression
,内部元素将重新呈现。但是我已经正确地给了redux store
(至少据我所知。这个问题不是在顶层发生的,而是在keys
div中嵌套的形式。
对这个问题有什么解决办法吗?