目的：自定义实现表单布局上的**数据筛选**功能，两个EB浏览框间进行联动，触发字段id:fatherFieldId，被联动字段id:954269161320415236

Ecode方案如下：策略是自定义获取父字段的值，并在子字段获取数据时进行拦截，把搜索参数加入到子字段的参数中去进行搜索，如非demo的其他类型，可以根据表单中的联动效果，进行自定义复写值和开发

当前最低已支持的基线服务版本：weap-ebdfpage0-1.13.0-hotfix

开发时间：2014.1.18

代码如下：

```typescript
import { regOvProps } from '@weapp/utils';

let fatherOptions = [];//存放父选项
let fatherFieldId = '';//存放父字段id
let axioRegisterAlready = false;//axio复写次数控制
  
const setDataOptions = (fieldId, option) => {
  fatherFieldId = fieldId;
  fatherOptions = option;
};
  
const setFormParam = (oldFormParam) => {
  const _formParam = {
    formId: oldFormParam.formId || '954269053763813376', // 表单id
    fieldId: oldFormParam.fieldId,
    module: 'ebuilderform',
    dataDetails: [
      ...(oldFormParam?.dataDetails || []),
      {
        formField: {
          id: fatherFieldId, // 父字段id
        },
        dataOptions: fatherOptions, // 传入父选项值作为搜索条件
      },
    ],
  };
  return { formParam: JSON.stringify(_formParam) };
};
  
function regiserAjax() {
  // 拦截设计器组件请求接口，改下参数
  window.axios.interceptors.request.use((config) => {
    const browserUrls = ['/api/ebuilder/form/common/browser/complete/ebuilder'];
    if (browserUrls.includes(config.url)) {
      console.log('config', config);
      if (config.data?.formParam && 'needScopeFilter' in config?.data?.customParam) { // 写一些限定条件，控制针对url的复写
        if (config.data?.formParam) { // 需要复写的参数
          const oldFormParam = JSON.parse(config.data?.formParam);// 复写搜索框的formParam参数
          if (oldFormParam.fieldId === '954269161320415236') { // 复写孩子
            const params = setFormParam(oldFormParam) || {};
            config.data = {
              ...config.data,
              ...params,
            };
          }
        }
      }
    }
    return config;
  }, (error) => Promise.reject(error));
}
  
regOvProps('weappEbdfpage', 'EditFieldValue', (props) => {
  let newProps = { ...props };
  let editFieldValueStore;
  console.log(props);
  if (window.location.href == 'http://develop.yunteams.cn:7777/sp/ebdfpage/list/954269053763813417') {
    console.log(props);
    if (!axioRegisterAlready) {
      regiserAjax();
      axioRegisterAlready = true;
    }
  
    newProps = {
      ...newProps,
      // 获取编辑字段值的store
      setEditFieldValueStore: (store) => {
        editFieldValueStore = store;
        window.editFieldValueStore = store;
        console.log('editFieldValueStore', store);
      },
      // 编辑字段值onChange复写，父设置值后，把值存起来，联动孩子
      onChange: (data) => {
        console.log('onChange', editFieldValueStore, data);
        if (data?.length && data[0]?.value) {
          const _fieldId = data[0]?.fieldId;
          const _options = data[0]?.value?.[0]?.dataOptions;
          setDataOptions(_fieldId, _options);
        }
      },
    };
  }
  return newProps;
}, 0);
```
