![](https://i-blog.csdnimg.cn/blog_migrate/158b56224f644c55c0d271d8b95f8b46.png)
![](https://i-blog.csdnimg.cn/blog_migrate/5a542244a323a92a06f4325c544bc96d.png)
// 生成子表单序号
// tableFieldId:子表单组件唯一标识
// orderFieldId:序号字段唯一标识
// beforeText:序号前缀文案
// afterText:序号后缀文案
export function setOrderNum(tableFieldId, orderFieldId, beforeText = '', afterText = '') {
if (!tableFieldId || !orderFieldId) { return };
const tableField = this.$(tableFieldId);
const items = tableField.getItems();
items.forEach((item, index) => {
const updateObject = {};
updateObject[orderFieldId] = `${beforeText}${index + 1}${afterText}`;
tableField.updateItemValue(item, updateObject);
});
}
![](https://i-blog.csdnimg.cn/blog_migrate/ac9a0c9b317228122ba4f60dbf4e4b8f.png)
export function onTableChange({ value, extra }) {
const { formGroupId, from, changes = {}, tableFieldId } = extra || {};
// 必须,避免使用 updateItemValue 更新子表数据后,再次触发 onChange 陷入死循环
if (from === 'setItemValue' || from === 'form_change') { return };
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvb'); // 普通序号
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvc', '前文案-'); // 带前缀序号
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvd', '', '-后文案'); // 带后缀序号
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvg', '前文案-', '-后文案'); // 带前后缀序号
}
![](https://i-blog.csdnimg.cn/blog_migrate/6ef98839dc35f37cef7858cdde7017fb.png)
// 当页面渲染完毕后马上调用下面的函数,这个函数是在当前页面 - 设置 - 生命周期 - 页面加载完成时中被关联的。
export function didMount() {
// 详情页不触发
if (!this.utils.isSubmissionPage()) { return };
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvb'); // 普通序号
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvc', '前文案-'); // 带前缀序号
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvd', '', '-后文案'); // 带后缀序号
this.setOrderNum('tableField_lblkphmo', 'textField_lblyqnvg', '前文案-', '-后文案'); // 带前后缀序号
}