云听CEM

    1、调查问卷模块,

    modal view

    containers/designer.tsx 设计模式 配置不同的

    containers/runtime.tsx 展示模式
    答题
    pc phone

    设计模式和展示模式,调用的是相同的视图模块,在视图里面区分是展示还是设计

    1. 设计题目模型,继承了基本模型, 每个题目模型可以配置校验方法,

    2. 运行时,统一收集 校验方法, registerAsRef containers/runtime.tsx

    3. 提交时,通过控制反转的方式,基本模型里面会调用各个模型里面各自的校验方法,

    4. 视图组件,通过高阶组件来处理通用的问卷标题,在视图这里注册模型,更新值,维护当前的校验状态

      3. 每一个内容组件又分为设计和展示, 通过renderProps的方式,注入当前需要显示的组件
      Model={Model}
      UIComponent={Checkbox}
      onValueChange={e => onValueChange(e)}
      onTextChange={(e, id) => onTextChange(e, id)}
      type=”Checkbox”
      value={value}

    5. 每一个题目还有错误提示组件

    6. 通知