Merge branch 'dev'——修复编辑器:嵌套条件判断的分支同步写错容器
This commit is contained in:
@@ -996,11 +996,16 @@ var _stepEditor={
|
||||
self._syncParams(childWrap,steps[i].params.children);
|
||||
}
|
||||
// if_el 双分支(then/else 在 .if-branch 内,不会与上面的直接子级选择器冲突)
|
||||
var thenWrap=card.querySelector(':scope > .if-branch .step-children.if-then');
|
||||
//
|
||||
// ⚠ `.if-branch` 与 `.step-children` 之间**必须是 `>`(直接子级)**:
|
||||
// 写成后代(空格)时,条件判断里再嵌套一个条件判断的话,本卡片会**匹配到内层
|
||||
// 那个 if_el 的分支容器**(文档顺序上更靠前),于是把内层分支的子步骤当成自己的
|
||||
// 去同步 —— 症状:自己的步骤"填了值保存就没了"、步骤名被内层的容器步骤覆盖。
|
||||
var thenWrap=card.querySelector(':scope > .if-branch > .step-children.if-then');
|
||||
if(thenWrap&&steps[i].params&&Array.isArray(steps[i].params.then)){
|
||||
self._syncParams(thenWrap,steps[i].params.then);
|
||||
}
|
||||
var elseWrap=card.querySelector(':scope > .if-branch .step-children.if-else');
|
||||
var elseWrap=card.querySelector(':scope > .if-branch > .step-children.if-else');
|
||||
if(elseWrap&&steps[i].params&&Array.isArray(steps[i].params.else)){
|
||||
self._syncParams(elseWrap,steps[i].params.else);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user